Commit f2415889 authored by Miklos Szeredi's avatar Miklos Szeredi Committed by Yang Yingliang
Browse files

ovl: allow upperdir inside lowerdir



stable inclusion
from linux-4.19.190
commit a130ed5212c3dfff88065db4f62c29bb184748d4

--------------------------------

commit 708fa015 upstream.

Commit 146d62e5 ("ovl: detect overlapping layers") made sure we don't
have overlapping layers, but it also broke the arguably valid use case of

 mount -olowerdir=/,upperdir=/subdir,..

where upperdir overlaps lowerdir on the same filesystem.  This has been
causing regressions.

Revert the check, but only for the specific case where upperdir and/or
workdir are subdirectories of lowerdir.  Any other overlap (e.g. lowerdir
is subdirectory of upperdir, etc) case is crazy, so leave the check in
place for those.

Overlaps are detected at lookup time too, so reverting the mount time check
should be safe.

Fixes: 146d62e5 ("ovl: detect overlapping layers")
Cc: <stable@vger.kernel.org> # v5.2
Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
Conflicts:
  fs/overlayfs/super.c
[yyl: keep ovl_check_overlapping_layers() same as mainline]
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
parent 9c16025d
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment