summaryrefslogtreecommitdiffstats
path: root/fs/dcache.c
diff options
context:
space:
mode:
authorNick Piggin2010-08-17 20:37:33 +0200
committerAl Viro2010-08-18 14:35:46 +0200
commit2a4419b5b2a77f3f4537c14f7ad7df95770655dd (patch)
treead66519a92b995920ecada788e4a08e265747545 /fs/dcache.c
parentapparmor: use task path helpers (diff)
downloadkernel-qcow2-linux-2a4419b5b2a77f3f4537c14f7ad7df95770655dd.tar.gz
kernel-qcow2-linux-2a4419b5b2a77f3f4537c14f7ad7df95770655dd.tar.xz
kernel-qcow2-linux-2a4419b5b2a77f3f4537c14f7ad7df95770655dd.zip
fs: fs_struct rwlock to spinlock
fs: fs_struct rwlock to spinlock struct fs_struct.lock is an rwlock with the read-side used to protect root and pwd members while taking references to them. Taking a reference to a path typically requires just 2 atomic ops, so the critical section is very small. Parallel read-side operations would have cacheline contention on the lock, the dentry, and the vfsmount cachelines, so the rwlock is unlikely to ever give a real parallelism increase. Replace it with a spinlock to avoid one or two atomic operations in typical path lookup fastpath. Signed-off-by: Nick Piggin <npiggin@kernel.dk> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/dcache.c')
0 files changed, 0 insertions, 0 deletions