提交 4ce16ef3 编写于 作者: A Al Viro

fs/namei.c: don't pass nameidata to d_revalidate()

since the method wrapped by it doesn't need that anymore...
Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
上级 0b728e19
......@@ -463,9 +463,9 @@ static int unlazy_walk(struct nameidata *nd, struct dentry *dentry)
return -ECHILD;
}
static inline int d_revalidate(struct dentry *dentry, struct nameidata *nd)
static inline int d_revalidate(struct dentry *dentry, unsigned int flags)
{
return dentry->d_op->d_revalidate(dentry, nd ? nd->flags : 0);
return dentry->d_op->d_revalidate(dentry, flags);
}
/**
......@@ -511,7 +511,7 @@ static int complete_walk(struct nameidata *nd)
return 0;
/* Note: we do not d_invalidate() */
status = d_revalidate(dentry, nd);
status = d_revalidate(dentry, nd->flags);
if (status > 0)
return 0;
......@@ -1050,7 +1050,7 @@ static struct dentry *lookup_dcache(struct qstr *name, struct dentry *dir,
if (d_need_lookup(dentry)) {
*need_lookup = true;
} else if (dentry->d_flags & DCACHE_OP_REVALIDATE) {
error = d_revalidate(dentry, nd);
error = d_revalidate(dentry, nd ? nd->flags : 0);
if (unlikely(error <= 0)) {
if (error < 0) {
dput(dentry);
......@@ -1158,7 +1158,7 @@ static int lookup_fast(struct nameidata *nd, struct qstr *name,
if (unlikely(d_need_lookup(dentry)))
goto unlazy;
if (unlikely(dentry->d_flags & DCACHE_OP_REVALIDATE)) {
status = d_revalidate(dentry, nd);
status = d_revalidate(dentry, nd->flags);
if (unlikely(status <= 0)) {
if (status != -ECHILD)
need_reval = 0;
......@@ -1188,7 +1188,7 @@ static int lookup_fast(struct nameidata *nd, struct qstr *name,
}
if (unlikely(dentry->d_flags & DCACHE_OP_REVALIDATE) && need_reval)
status = d_revalidate(dentry, nd);
status = d_revalidate(dentry, nd->flags);
if (unlikely(status <= 0)) {
if (status < 0) {
dput(dentry);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册