forked from Minki/linux
fix a braino in ovl_d_select_inode()
when opening a directory we want the overlayfs inode, not one from the topmost layer. Reported-By: Andrey Jr. Melnikov <temnota.am@gmail.com> Tested-By: Andrey Jr. Melnikov <temnota.am@gmail.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
0a73d0a204
commit
9391dd00d1
@ -343,6 +343,9 @@ struct inode *ovl_d_select_inode(struct dentry *dentry, unsigned file_flags)
|
|||||||
struct path realpath;
|
struct path realpath;
|
||||||
enum ovl_path_type type;
|
enum ovl_path_type type;
|
||||||
|
|
||||||
|
if (d_is_dir(dentry))
|
||||||
|
return d_backing_inode(dentry);
|
||||||
|
|
||||||
type = ovl_path_real(dentry, &realpath);
|
type = ovl_path_real(dentry, &realpath);
|
||||||
if (ovl_open_need_copy_up(file_flags, type, realpath.dentry)) {
|
if (ovl_open_need_copy_up(file_flags, type, realpath.dentry)) {
|
||||||
err = ovl_want_write(dentry);
|
err = ovl_want_write(dentry);
|
||||||
|
Loading…
Reference in New Issue
Block a user