namei: simplify invalidation logics in lookup_dcache()
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 6 Mar 2016 03:37:46 +0000 (22:37 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 14 Mar 2016 04:15:31 +0000 (00:15 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/namei.c

index fc6c5458b5aece8935a023469e55102bdc795d6b..955e886c8e2a73975aa0417523b2ac24603f1bfa 100644 (file)
@@ -1458,14 +1458,10 @@ static struct dentry *lookup_dcache(struct qstr *name, struct dentry *dir,
                if (dentry->d_flags & DCACHE_OP_REVALIDATE) {
                        error = d_revalidate(dentry, flags);
                        if (unlikely(error <= 0)) {
-                               if (error < 0) {
-                                       dput(dentry);
-                                       return ERR_PTR(error);
-                               } else {
+                               if (!error)
                                        d_invalidate(dentry);
-                                       dput(dentry);
-                                       dentry = NULL;
-                               }
+                               dput(dentry);
+                               return ERR_PTR(error);
                        }
                }
        }