fix hostfs_open() use of ->f_path.dentry

this is one of the cases where we need to use d_real() - we are
using more than the name of dentry here.  ->d_sb is used as well,
so in case of hostfs being used as a layer we get the wrong
superblock.

Reported-by: Johannes Berg <johannes@sipsolutions.net>
Tested-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Al Viro 2020-12-09 18:38:24 -05:00
parent 1a97d899ec
commit 2e2cbaf920
1 changed files with 1 additions and 1 deletions

View File

@ -315,7 +315,7 @@ retry:
if (mode & FMODE_WRITE)
r = w = 1;
name = dentry_name(file->f_path.dentry);
name = dentry_name(d_real(file->f_path.dentry, file->f_inode));
if (name == NULL)
return -ENOMEM;