fs: push rcu_barrier() from deactivate_locked_super() to filesystems
There's no reason to call rcu_barrier() on every deactivate_locked_super(). We only need to make sure that all delayed rcu free inodes are flushed before we destroy related cache. Removing rcu_barrier() from deactivate_locked_super() affects some fast paths. E.g. on my machine exit_group() of a last process in IPC namespace takes 0.07538s. rcu_barrier() takes 0.05188s of that time. Signed-off-by:Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk>
Showing
- fs/9p/v9fs.c 5 additions, 0 deletionsfs/9p/v9fs.c
- fs/adfs/super.c 5 additions, 0 deletionsfs/adfs/super.c
- fs/affs/super.c 5 additions, 0 deletionsfs/affs/super.c
- fs/afs/super.c 5 additions, 0 deletionsfs/afs/super.c
- fs/befs/linuxvfs.c 5 additions, 0 deletionsfs/befs/linuxvfs.c
- fs/bfs/inode.c 5 additions, 0 deletionsfs/bfs/inode.c
- fs/btrfs/extent_io.c 6 additions, 0 deletionsfs/btrfs/extent_io.c
- fs/btrfs/inode.c 5 additions, 0 deletionsfs/btrfs/inode.c
- fs/ceph/super.c 5 additions, 0 deletionsfs/ceph/super.c
- fs/cifs/cifsfs.c 5 additions, 0 deletionsfs/cifs/cifsfs.c
- fs/coda/inode.c 5 additions, 0 deletionsfs/coda/inode.c
- fs/ecryptfs/main.c 6 additions, 0 deletionsfs/ecryptfs/main.c
- fs/efs/super.c 5 additions, 0 deletionsfs/efs/super.c
- fs/exofs/super.c 5 additions, 0 deletionsfs/exofs/super.c
- fs/ext2/super.c 5 additions, 0 deletionsfs/ext2/super.c
- fs/ext3/super.c 5 additions, 0 deletionsfs/ext3/super.c
- fs/ext4/super.c 5 additions, 0 deletionsfs/ext4/super.c
- fs/fat/inode.c 5 additions, 0 deletionsfs/fat/inode.c
- fs/freevxfs/vxfs_super.c 5 additions, 0 deletionsfs/freevxfs/vxfs_super.c
- fs/fuse/inode.c 6 additions, 0 deletionsfs/fuse/inode.c
Loading
Please register or sign in to comment