[CRIU] [PATCH v2 1/5] cgroup: add a check for cgroup namespaces
Tycho Andersen
tycho.andersen at canonical.com
Sun Feb 21 11:28:49 PST 2016
v2: print a warning when cgroup ns is not present.
Signed-off-by: Tycho Andersen <tycho.andersen at canonical.com>
---
criu/cr-check.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/criu/cr-check.c b/criu/cr-check.c
index 2bb0d9a..a67ee2d 100644
--- a/criu/cr-check.c
+++ b/criu/cr-check.c
@@ -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;
--
2.5.0
More information about the CRIU
mailing list