untangling do_lookup() - merge d_alloc_and_lookup() callers
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
diff --git a/fs/namei.c b/fs/namei.c
index a0f9a02..1d60fdf 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -1188,12 +1188,12 @@
}
if (!d_invalidate(dentry)) {
dput(dentry);
- dentry = d_alloc_and_lookup(parent, name, nd);
+ dentry = NULL;
}
}
- } else if (!dentry) {
- dentry = d_alloc_and_lookup(parent, name, nd);
}
+ if (!dentry)
+ dentry = d_alloc_and_lookup(parent, name, nd);
l:
mutex_unlock(&dir->i_mutex);
if (IS_ERR(dentry))