diff options
| author | Ingo Molnar <mingo@kernel.org> | 2017-11-10 08:21:08 +0100 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2017-11-10 08:21:08 +0100 |
| commit | b5cd3b51e247473e290be5cd09e77171e466cd89 (patch) | |
| tree | ac8c87e1b38f61a4c879c574dc9373db41f3df01 /fs/overlayfs/readdir.c | |
| parent | x86/platform/UV: Convert timers to use timer_setup() (diff) | |
| parent | Merge branch 'akpm' (patches from Andrew) (diff) | |
| download | linux-b5cd3b51e247473e290be5cd09e77171e466cd89.tar.gz linux-b5cd3b51e247473e290be5cd09e77171e466cd89.zip | |
Merge branch 'linus' into x86/platform, to refresh the branch
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'fs/overlayfs/readdir.c')
| -rw-r--r-- | fs/overlayfs/readdir.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/fs/overlayfs/readdir.c b/fs/overlayfs/readdir.c index 0f85ee9c3268..698b74dd750e 100644 --- a/fs/overlayfs/readdir.c +++ b/fs/overlayfs/readdir.c @@ -1021,13 +1021,12 @@ int ovl_indexdir_cleanup(struct dentry *dentry, struct vfsmount *mnt, break; } err = ovl_verify_index(index, lowerstack, numlower); - if (err) { - if (err == -EROFS) - break; + /* Cleanup stale and orphan index entries */ + if (err && (err == -ESTALE || err == -ENOENT)) err = ovl_cleanup(dir, index); - if (err) - break; - } + if (err) + break; + dput(index); index = NULL; } |
