summaryrefslogtreecommitdiffstats
path: root/fs/dcache.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2014-09-27 03:26:50 +0200
committerAl Viro <viro@zeniv.linux.org.uk>2014-09-27 03:26:50 +0200
commit8527dd7187a05f2548010accdfad9dad892acf47 (patch)
tree46addad1d4bba3057de7eeb7fd01fa55ac87bcfc /fs/dcache.c
parentpull rehashing and unlocking the target dentry into __d_materialise_dentry() (diff)
downloadlinux-8527dd7187a05f2548010accdfad9dad892acf47.tar.xz
linux-8527dd7187a05f2548010accdfad9dad892acf47.zip
don't open-code d_rehash() in d_materialise_unique()
... and get rid of duplicate BUG_ON() there Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/dcache.c')
-rw-r--r--fs/dcache.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/fs/dcache.c b/fs/dcache.c
index 36d84ec31d8a..22107630fc03 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -2804,12 +2804,8 @@ struct dentry *d_materialise_unique(struct dentry *dentry, struct inode *inode)
actual = __d_instantiate_unique(dentry, inode);
if (!actual)
actual = dentry;
- else
- BUG_ON(!d_unhashed(actual));
- spin_lock(&actual->d_lock);
- _d_rehash(actual);
- spin_unlock(&actual->d_lock);
+ d_rehash(actual);
found:
spin_unlock(&inode->i_lock);
out_nolock: