Skip to content

Commit 7e96c1b

Browse files
committed
mnt: Fix fs_fully_visible to verify the root directory is visible
This fixes a dumb bug in fs_fully_visible that allows proc or sys to be mounted if there is a bind mount of part of /proc/ or /sys/ visible. Cc: stable@vger.kernel.org Reported-by: Eric Windisch <ewindisch@docker.com> Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
1 parent b787f68 commit 7e96c1b

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

fs/namespace.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3179,6 +3179,12 @@ bool fs_fully_visible(struct file_system_type *type)
31793179
if (mnt->mnt.mnt_sb->s_type != type)
31803180
continue;
31813181

3182+
/* This mount is not fully visible if it's root directory
3183+
* is not the root directory of the filesystem.
3184+
*/
3185+
if (mnt->mnt.mnt_root != mnt->mnt.mnt_sb->s_root)
3186+
continue;
3187+
31823188
/* This mount is not fully visible if there are any child mounts
31833189
* that cover anything except for empty directories.
31843190
*/

0 commit comments

Comments
 (0)