diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2011-07-26 11:36:34 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2011-07-26 18:57:09 +0200 |
commit | a209dfc7b0d94bd6fa94553c097836a2e6d0f0ba (patch) | |
tree | 7dacc92b08264c675a0dfcbae83982b7d3ad5135 /net | |
parent | Documentation: Exporting: update description of d_splice_alias (diff) | |
download | linux-a209dfc7b0d94bd6fa94553c097836a2e6d0f0ba.tar.xz linux-a209dfc7b0d94bd6fa94553c097836a2e6d0f0ba.zip |
vfs: dont chain pipe/anon/socket on superblock s_inodes list
Workloads using pipes and sockets hit inode_sb_list_lock contention.
superblock s_inodes list is needed for quota, dirty, pagecache and
fsnotify management. pipe/anon/socket fs are clearly not candidates for
these.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'net')
-rw-r--r-- | net/socket.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/socket.c b/net/socket.c index 02dc82db3d23..26ed35c7751e 100644 --- a/net/socket.c +++ b/net/socket.c @@ -467,7 +467,7 @@ static struct socket *sock_alloc(void) struct inode *inode; struct socket *sock; - inode = new_inode(sock_mnt->mnt_sb); + inode = new_inode_pseudo(sock_mnt->mnt_sb); if (!inode) return NULL; |