aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/dcache.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/dcache.c b/fs/dcache.c
index e9a07b2a0948..b60ddc41d783 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -2404,6 +2404,7 @@ struct dentry *d_materialise_unique(struct dentry *dentry, struct inode *inode)
2404 if (d_ancestor(alias, dentry)) { 2404 if (d_ancestor(alias, dentry)) {
2405 /* Check for loops */ 2405 /* Check for loops */
2406 actual = ERR_PTR(-ELOOP); 2406 actual = ERR_PTR(-ELOOP);
2407 spin_unlock(&inode->i_lock);
2407 } else if (IS_ROOT(alias)) { 2408 } else if (IS_ROOT(alias)) {
2408 /* Is this an anonymous mountpoint that we 2409 /* Is this an anonymous mountpoint that we
2409 * could splice into our tree? */ 2410 * could splice into our tree? */
@@ -2413,7 +2414,7 @@ struct dentry *d_materialise_unique(struct dentry *dentry, struct inode *inode)
2413 goto found; 2414 goto found;
2414 } else { 2415 } else {
2415 /* Nope, but we must(!) avoid directory 2416 /* Nope, but we must(!) avoid directory
2416 * aliasing */ 2417 * aliasing. This drops inode->i_lock */
2417 actual = __d_unalias(inode, dentry, alias); 2418 actual = __d_unalias(inode, dentry, alias);
2418 } 2419 }
2419 write_sequnlock(&rename_lock); 2420 write_sequnlock(&rename_lock);