diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-12-13 20:16:40 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-12-13 20:16:40 -0300 |
commit | 6baeafd1f2a54ca041ff71778ebda9fac75aad12 (patch) | |
tree | 57d2d68fa5d1d91f57cd7fcf0aed0a97892cc8cc /fs | |
parent | 189382f7a338c02b448ab27e1d5566e052165dc8 (diff) |
Linux-libre 4.8.14-gnuHEADpck-4.8.14-gnumaster
Diffstat (limited to 'fs')
-rw-r--r-- | fs/overlayfs/super.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/overlayfs/super.c b/fs/overlayfs/super.c index a78415d77..78be4aee7 100644 --- a/fs/overlayfs/super.c +++ b/fs/overlayfs/super.c @@ -329,11 +329,11 @@ static struct dentry *ovl_d_real(struct dentry *dentry, if (!real) goto bug; + /* Handle recursion */ + real = d_real(real, inode, open_flags); + if (!inode || inode == d_inode(real)) return real; - - /* Handle recursion */ - return d_real(real, inode, open_flags); bug: WARN(1, "ovl_d_real(%pd4, %s:%lu): real dentry not found\n", dentry, inode ? inode->i_sb->s_id : "NULL", inode ? inode->i_ino : 0); |