summaryrefslogtreecommitdiffstats
path: root/include/linux/dcache.h
diff options
context:
space:
mode:
authorNick Piggin <npiggin@kernel.dk>2011-01-07 17:50:05 +1100
committerNick Piggin <npiggin@kernel.dk>2011-01-07 17:50:31 +1100
commitceb5bdc2d246f6d81cf61ed70f325308a11821d2 (patch)
tree65fc9e0227994d4ffc80530dd15bb5a9672a295e /include/linux/dcache.h
parent626d607435617cc0f033522083e2bb195b81813c (diff)
downloadlinux-ceb5bdc2d246f6d81cf61ed70f325308a11821d2.tar.gz
linux-ceb5bdc2d246f6d81cf61ed70f325308a11821d2.tar.xz
fs: dcache per-bucket dcache hash locking
We can turn the dcache hash locking from a global dcache_hash_lock into per-bucket locking. Signed-off-by: Nick Piggin <npiggin@kernel.dk>
Diffstat (limited to 'include/linux/dcache.h')
-rw-r--r--include/linux/dcache.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/dcache.h b/include/linux/dcache.h
index 8b2064d02928..5f0392ef759b 100644
--- a/include/linux/dcache.h
+++ b/include/linux/dcache.h
@@ -4,6 +4,7 @@
#include <asm/atomic.h>
#include <linux/list.h>
#include <linux/rculist.h>
+#include <linux/rculist_bl.h>
#include <linux/spinlock.h>
#include <linux/seqlock.h>
#include <linux/cache.h>
@@ -95,7 +96,7 @@ struct dentry {
/* RCU lookup touched fields */
unsigned int d_flags; /* protected by d_lock */
seqcount_t d_seq; /* per dentry seqlock */
- struct hlist_node d_hash; /* lookup hash list */
+ struct hlist_bl_node d_hash; /* lookup hash list */
struct dentry *d_parent; /* parent directory */
struct qstr d_name;
struct inode *d_inode; /* Where the name belongs to - NULL is