summaryrefslogtreecommitdiff
path: root/fs/super.c
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 /fs/super.c
parent626d607435617cc0f033522083e2bb195b81813c (diff)
downloadlwn-ceb5bdc2d246f6d81cf61ed70f325308a11821d2.tar.gz
lwn-ceb5bdc2d246f6d81cf61ed70f325308a11821d2.zip
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 'fs/super.c')
-rw-r--r--fs/super.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/super.c b/fs/super.c
index ca696155cd9a..968ba013011a 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -30,6 +30,7 @@
#include <linux/idr.h>
#include <linux/mutex.h>
#include <linux/backing-dev.h>
+#include <linux/rculist_bl.h>
#include "internal.h"
@@ -71,7 +72,7 @@ static struct super_block *alloc_super(struct file_system_type *type)
INIT_LIST_HEAD(&s->s_files);
#endif
INIT_LIST_HEAD(&s->s_instances);
- INIT_HLIST_HEAD(&s->s_anon);
+ INIT_HLIST_BL_HEAD(&s->s_anon);
INIT_LIST_HEAD(&s->s_inodes);
INIT_LIST_HEAD(&s->s_dentry_lru);
init_rwsem(&s->s_umount);