From: Al Viro Date: Fri, 4 Oct 2013 15:09:01 +0000 (-0400) Subject: fold __d_shrink() into its only remaining caller X-Git-Tag: v3.12.32~136 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e7f269e225873c08ec13c4f56d6dd2aa780a884c;p=thirdparty%2Fkernel%2Fstable.git fold __d_shrink() into its only remaining caller commit b61625d24596ea44555943867d5a5c1efd81074c upstream. Signed-off-by: Al Viro Signed-off-by: Jiri Slaby --- diff --git a/fs/dcache.c b/fs/dcache.c index 6a9731129ae90..7839720ce9f2a 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -480,27 +480,6 @@ static struct dentry *d_kill(struct dentry *dentry, struct dentry *parent) return parent; } -/* - * Unhash a dentry without inserting an RCU walk barrier or checking that - * dentry->d_lock is locked. The caller must take care of that, if - * appropriate. - */ -static void __d_shrink(struct dentry *dentry) -{ - if (!d_unhashed(dentry)) { - struct hlist_bl_head *b; - if (unlikely(dentry->d_flags & DCACHE_DISCONNECTED)) - b = &dentry->d_sb->s_anon; - else - b = d_hash(dentry->d_parent, dentry->d_name.hash); - - hlist_bl_lock(b); - __hlist_bl_del(&dentry->d_hash); - dentry->d_hash.pprev = NULL; - hlist_bl_unlock(b); - } -} - /** * d_drop - drop a dentry * @dentry: dentry to drop @@ -519,7 +498,16 @@ static void __d_shrink(struct dentry *dentry) void __d_drop(struct dentry *dentry) { if (!d_unhashed(dentry)) { - __d_shrink(dentry); + struct hlist_bl_head *b; + if (unlikely(dentry->d_flags & DCACHE_DISCONNECTED)) + b = &dentry->d_sb->s_anon; + else + b = d_hash(dentry->d_parent, dentry->d_name.hash); + + hlist_bl_lock(b); + __hlist_bl_del(&dentry->d_hash); + dentry->d_hash.pprev = NULL; + hlist_bl_unlock(b); dentry_rcuwalk_barrier(dentry); } }