2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-31 14:25:49 +00:00

cgroup: add a check for cgroup namespaces

v2: print a warning when cgroup ns is not present.

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
This commit is contained in:
Tycho Andersen
2016-02-21 12:28:49 -07:00
committed by Pavel Emelyanov
parent f400efb2b2
commit a80dec3fb1

View File

@@ -820,6 +820,23 @@ static int check_clone_parent_vs_pid()
return 0;
}
static int check_cgroupns(void)
{
int ret;
if (opts.check_ms_kernel) {
pr_warn("Skipping cgroup namespaces check\n");
return 0;
}
ret = access("/proc/self/ns/cgroup", F_OK);
if (ret < 0) {
pr_err("cgroupns not supported. This is not fatal.");
return -1;
}
return 0;
}
static int (*chk_feature)(void);
int cr_check(void)
@@ -876,6 +893,7 @@ int cr_check(void)
ret |= check_aio_remap();
ret |= check_fdinfo_lock();
ret |= check_clone_parent_vs_pid();
ret |= check_cgroupns();
out:
if (!ret)
@@ -949,6 +967,8 @@ int check_add_feature(char *feat)
chk_feature = check_ptrace_dump_seccomp_filters;
else if (!strcmp(feat, "loginuid"))
chk_feature = check_loginuid;
else if (!strcmp(feat, "cgroupns"))
chk_feature = check_cgroupns;
else {
pr_err("Unknown feature %s\n", feat);
return -1;