fs: dcache scale dentry refcount
Make d_count non-atomic and protect it with d_lock. This allows us to ensure a
0 refcount dentry remains 0 without dcache_lock. It is also fairly natural when
we start protecting many other dentry members with d_lock.
Signed-off-by:
Nick Piggin <npiggin@kernel.dk>
Showing
- arch/powerpc/platforms/cell/spufs/inode.c 1 addition, 1 deletionarch/powerpc/platforms/cell/spufs/inode.c
- drivers/infiniband/hw/ipath/ipath_fs.c 1 addition, 1 deletiondrivers/infiniband/hw/ipath/ipath_fs.c
- drivers/infiniband/hw/qib/qib_fs.c 1 addition, 1 deletiondrivers/infiniband/hw/qib/qib_fs.c
- fs/autofs4/expire.c 4 additions, 4 deletionsfs/autofs4/expire.c
- fs/autofs4/root.c 3 additions, 3 deletionsfs/autofs4/root.c
- fs/ceph/dir.c 3 additions, 1 deletionfs/ceph/dir.c
- fs/ceph/inode.c 2 additions, 2 deletionsfs/ceph/inode.c
- fs/ceph/mds_client.c 1 addition, 1 deletionfs/ceph/mds_client.c
- fs/coda/dir.c 1 addition, 1 deletionfs/coda/dir.c
- fs/configfs/dir.c 1 addition, 2 deletionsfs/configfs/dir.c
- fs/configfs/inode.c 1 addition, 1 deletionfs/configfs/inode.c
- fs/dcache.c 82 additions, 24 deletionsfs/dcache.c
- fs/ecryptfs/inode.c 1 addition, 1 deletionfs/ecryptfs/inode.c
- fs/locks.c 1 addition, 1 deletionfs/locks.c
- fs/namei.c 1 addition, 1 deletionfs/namei.c
- fs/nfs/dir.c 3 additions, 3 deletionsfs/nfs/dir.c
- fs/nfs/unlink.c 1 addition, 1 deletionfs/nfs/unlink.c
- fs/nfsd/vfs.c 2 additions, 3 deletionsfs/nfsd/vfs.c
- fs/nilfs2/super.c 1 addition, 1 deletionfs/nilfs2/super.c
- include/linux/dcache.h 15 additions, 14 deletionsinclude/linux/dcache.h
Please register or sign in to comment