aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
Diffstat (limited to 'fs')
-rw-r--r--fs/namei.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/namei.c b/fs/namei.c
index 91c637b68984..2e943ab04f32 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -1039,7 +1039,7 @@ static void follow_dotdot(struct nameidata *nd)
1039 * dir->d_inode->i_mutex must be held 1039 * dir->d_inode->i_mutex must be held
1040 */ 1040 */
1041static struct dentry *lookup_dcache(struct qstr *name, struct dentry *dir, 1041static struct dentry *lookup_dcache(struct qstr *name, struct dentry *dir,
1042 struct nameidata *nd, bool *need_lookup) 1042 unsigned int flags, bool *need_lookup)
1043{ 1043{
1044 struct dentry *dentry; 1044 struct dentry *dentry;
1045 int error; 1045 int error;
@@ -1050,7 +1050,7 @@ static struct dentry *lookup_dcache(struct qstr *name, struct dentry *dir,
1050 if (d_need_lookup(dentry)) { 1050 if (d_need_lookup(dentry)) {
1051 *need_lookup = true; 1051 *need_lookup = true;
1052 } else if (dentry->d_flags & DCACHE_OP_REVALIDATE) { 1052 } else if (dentry->d_flags & DCACHE_OP_REVALIDATE) {
1053 error = d_revalidate(dentry, nd ? nd->flags : 0); 1053 error = d_revalidate(dentry, flags);
1054 if (unlikely(error <= 0)) { 1054 if (unlikely(error <= 0)) {
1055 if (error < 0) { 1055 if (error < 0) {
1056 dput(dentry); 1056 dput(dentry);
@@ -1104,7 +1104,7 @@ static struct dentry *__lookup_hash(struct qstr *name,
1104 bool need_lookup; 1104 bool need_lookup;
1105 struct dentry *dentry; 1105 struct dentry *dentry;
1106 1106
1107 dentry = lookup_dcache(name, base, nd, &need_lookup); 1107 dentry = lookup_dcache(name, base, nd ? nd->flags : 0, &need_lookup);
1108 if (!need_lookup) 1108 if (!need_lookup)
1109 return dentry; 1109 return dentry;
1110 1110
@@ -2356,7 +2356,7 @@ static int lookup_open(struct nameidata *nd, struct path *path,
2356 bool need_lookup; 2356 bool need_lookup;
2357 2357
2358 *opened &= ~FILE_CREATED; 2358 *opened &= ~FILE_CREATED;
2359 dentry = lookup_dcache(&nd->last, dir, nd, &need_lookup); 2359 dentry = lookup_dcache(&nd->last, dir, nd->flags, &need_lookup);
2360 if (IS_ERR(dentry)) 2360 if (IS_ERR(dentry))
2361 return PTR_ERR(dentry); 2361 return PTR_ERR(dentry);
2362 2362