From 854d3e63438d72cde8296a4c4564898c5f9dd01a Mon Sep 17 00:00:00 2001 From: Alexey Dobriyan Date: Mon, 20 Nov 2017 18:05:07 +0300 Subject: [PATCH] dcache: subtract d_hash_shift from 32 in advance Signed-off-by: Alexey Dobriyan Signed-off-by: Al Viro --- fs/dcache.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/dcache.c b/fs/dcache.c index 17e6b84b9656..d4f5b52d99be 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -110,7 +110,7 @@ static struct hlist_bl_head *dentry_hashtable __read_mostly; static inline struct hlist_bl_head *d_hash(unsigned int hash) { - return dentry_hashtable + (hash >> (32 - d_hash_shift)); + return dentry_hashtable + (hash >> d_hash_shift); } #define IN_LOOKUP_SHIFT 10 @@ -3593,6 +3593,7 @@ static void __init dcache_init_early(void) &d_hash_mask, 0, 0); + d_hash_shift = 32 - d_hash_shift; } static void __init dcache_init(void) @@ -3619,6 +3620,7 @@ static void __init dcache_init(void) &d_hash_mask, 0, 0); + d_hash_shift = 32 - d_hash_shift; } /* SLAB cache for __getname() consumers */ -- GitLab