Commit 8613a209 authored by Al Viro's avatar Al Viro

make lookup_one_len() safe to use with directory locked shared

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 88d8331a
...@@ -2471,6 +2471,7 @@ static int lookup_one_len_common(const char *name, struct dentry *base, ...@@ -2471,6 +2471,7 @@ static int lookup_one_len_common(const char *name, struct dentry *base,
*/ */
struct dentry *lookup_one_len(const char *name, struct dentry *base, int len) struct dentry *lookup_one_len(const char *name, struct dentry *base, int len)
{ {
struct dentry *dentry;
struct qstr this; struct qstr this;
int err; int err;
...@@ -2480,7 +2481,8 @@ struct dentry *lookup_one_len(const char *name, struct dentry *base, int len) ...@@ -2480,7 +2481,8 @@ struct dentry *lookup_one_len(const char *name, struct dentry *base, int len)
if (err) if (err)
return ERR_PTR(err); return ERR_PTR(err);
return __lookup_hash(&this, base, 0); dentry = lookup_dcache(&this, base, 0);
return dentry ? dentry : __lookup_slow(&this, base, 0);
} }
EXPORT_SYMBOL(lookup_one_len); EXPORT_SYMBOL(lookup_one_len);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment