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:
committed by
Pavel Emelyanov
parent
f400efb2b2
commit
a80dec3fb1
@@ -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;
|
||||
|
Reference in New Issue
Block a user