Commit aa65fa35 authored by Al Viro's avatar Al Viro

may_follow_link() should use nd->inode

Now that we can get there in RCU mode, we shouldn't play with
nd->path.dentry->d_inode - it's not guaranteed to be stable.
Use nd->inode instead.
Reported-by: default avatarHugh Dickins <hughd@google.com>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 97242f99
...@@ -879,7 +879,7 @@ static inline int may_follow_link(struct nameidata *nd) ...@@ -879,7 +879,7 @@ static inline int may_follow_link(struct nameidata *nd)
return 0; return 0;
/* Allowed if parent directory not sticky and world-writable. */ /* Allowed if parent directory not sticky and world-writable. */
parent = nd->path.dentry->d_inode; parent = nd->inode;
if ((parent->i_mode & (S_ISVTX|S_IWOTH)) != (S_ISVTX|S_IWOTH)) if ((parent->i_mode & (S_ISVTX|S_IWOTH)) != (S_ISVTX|S_IWOTH))
return 0; return 0;
......
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