summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-03-06 04:37:46 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2016-03-14 05:15:31 +0100
commit74ff0ffc7f0682cb4c00252807d76116b95ecb9e (patch)
tree0359a12ca14101321e4ab0118ac8bea9fa9a7bd0
parentnamei: change calling conventions for lookup_{fast,slow} and follow_managed() (diff)
downloadlinux-74ff0ffc7f0682cb4c00252807d76116b95ecb9e.tar.xz
linux-74ff0ffc7f0682cb4c00252807d76116b95ecb9e.zip
namei: simplify invalidation logics in lookup_dcache()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--fs/namei.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/fs/namei.c b/fs/namei.c
index fc6c5458b5ae..955e886c8e2a 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -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);
}
}
}