In mainline rootfs is marked always as MNT_LOCKED, sys_umount checks this flag and fails its processing. Our kernels lacks for MNT_LOCKED flag, so we use another kind of check to prevent incorrect operation.
v2: use mnt_has_parent() https://jira.sw.ru/browse/PSBM-46437 Signed-off-by: Vasily Averin <v...@virtuozzo.com>
diff --git a/fs/namespace.c b/fs/namespace.c index 988320b..4fb935a 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -1355,6 +1355,8 @@ SYSCALL_DEFINE2(umount, char __user *, name, int, flags) goto dput_and_out; if (!check_mnt(mnt)) goto dput_and_out; + if (!mnt_has_parent(mnt)) + goto dput_and_out; retval = do_umount(mnt, flags); dput_and_out:
_______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel