[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7830.1294972436@jrobl>
Date: Fri, 14 Jan 2011 11:33:56 +0900
From: "J. R. Okajima" <hooanon05@...oo.co.jp>
To: Nick Piggin <npiggin@...il.com>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
linux-kernel@...r.kernel.org
Subject: Re: vfs-scale, nd->inode after __do_follow_link()
"J. R. Okajima":
> Isn't it path.dentry->d_inode instead of nd.inode?
There is another one just after.
J. R. Okajima
diff --git a/fs/namei.c b/fs/namei.c
index 5bb7588..03e45ae 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -2356,8 +2374,9 @@ reval:
goto exit_dput;
error = __do_follow_link(&path, &nd, &cookie);
if (unlikely(error)) {
- if (!IS_ERR(cookie) && nd.inode->i_op->put_link)
- nd.inode->i_op->put_link(path.dentry, &nd, cookie);
+ struct inode *i = path.dentry->d_inode;
+ if (!IS_ERR(cookie) && i->i_op->put_link)
+ i->i_op->put_link(path.dentry, &nd, cookie);
/* nd.path had been dropped */
nd.path = path;
goto out_path;
@@ -2365,8 +2384,11 @@ reval:
holder = path;
nd.flags &= ~LOOKUP_PARENT;
filp = do_last(&nd, &path, open_flag, acc_mode, mode, pathname);
- if (nd.inode->i_op->put_link)
- nd.inode->i_op->put_link(holder.dentry, &nd, cookie);
+ {
+ struct inode *i = holder.dentry->d_inode;
+ if (i->i_op->put_link)
+ i->i_op->put_link(holder.dentry, &nd, cookie);
+ }
path_put(&holder);
}
out:
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists