Skip to content

Commit 51dfcb0

Browse files
committed
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
Pull user-namespace fix from Eric Biederman: "Eric Windish recently reported a really bug that allows mounting fresh copies of proc and sysfs when it really should not be allowed. The code attempted to verify that proc and sysfs were fully visible but there is a test missing to ensure that the root of the filesystem is visible. Doh! The following patch fixes that. This fixes a containment issue that the docker folks are seeing" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: mnt: Fix fs_fully_visible to verify the root directory is visible
2 parents 9d88f22 + 7e96c1b commit 51dfcb0

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)