summaryrefslogtreecommitdiffstats
path: root/fs/overlayfs
diff options
context:
space:
mode:
authorMiklos Szeredi <mszeredi@redhat.com>2016-07-29 12:05:24 +0200
committerMiklos Szeredi <mszeredi@redhat.com>2016-07-29 12:05:24 +0200
commit76bc8e2843b66f8205026365966b49ec6da39ae7 (patch)
tree9ec472578011e1a87ded786bfa2a0ded740b3b24 /fs/overlayfs
parent656189d207f0ed267f41338f7ff86f98e420099f (diff)
downloadlinux-76bc8e2843b66f8205026365966b49ec6da39ae7.tar.gz
linux-76bc8e2843b66f8205026365966b49ec6da39ae7.tar.bz2
linux-76bc8e2843b66f8205026365966b49ec6da39ae7.zip
ovl: disallow overlayfs as upperdir
This does not work and does not make sense. So instead of fixing it (probably not hard) just disallow. Reported-by: Andrei Vagin <avagin@gmail.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com> Cc: <stable@vger.kernel.org>
Diffstat (limited to 'fs/overlayfs')
-rw-r--r--fs/overlayfs/super.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/overlayfs/super.c b/fs/overlayfs/super.c
index 7fd216a89d9a..f3577395eca5 100644
--- a/fs/overlayfs/super.c
+++ b/fs/overlayfs/super.c
@@ -407,7 +407,8 @@ static struct ovl_entry *ovl_alloc_entry(unsigned int numlower)
static bool ovl_dentry_remote(struct dentry *dentry)
{
return dentry->d_flags &
- (DCACHE_OP_REVALIDATE | DCACHE_OP_WEAK_REVALIDATE);
+ (DCACHE_OP_REVALIDATE | DCACHE_OP_WEAK_REVALIDATE |
+ DCACHE_OP_REAL);
}
static bool ovl_dentry_weird(struct dentry *dentry)