From 6df334d1588dfcf99a405fb700971ac27cac438c Mon Sep 17 00:00:00 2001 From: Tycho Andersen Date: Wed, 14 Sep 2016 14:53:21 +0000 Subject: [PATCH] cgroup: get rid of weird hack in cgfsng_escape We initialized cgfsng in a strange way inside of its implementation of escape so we could use it during checkpoint. Instead, the previous patch does a hacky initialization in criu.c, and we can get rid of the hacks elsewhere :) Signed-off-by: Tycho Andersen --- src/lxc/cgroups/cgfsng.c | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/src/lxc/cgroups/cgfsng.c b/src/lxc/cgroups/cgfsng.c index 5b615543c..0777bf39a 100644 --- a/src/lxc/cgroups/cgfsng.c +++ b/src/lxc/cgroups/cgfsng.c @@ -1426,19 +1426,11 @@ static int cgfsng_nrtasks(void *hdata) { /* Only root needs to escape to the cgroup of its init */ static bool cgfsng_escape() { - struct cgfsng_handler_data *d; int i; - bool ret = false; if (geteuid()) return true; - d = cgfsng_init("criu-temp-cgfsng"); - if (!d) { - ERROR("cgfsng_init failed"); - return false; - } - for (i = 0; hierarchies[i]; i++) { char *fullpath = must_make_path(hierarchies[i]->mountpoint, hierarchies[i]->base_cgroup, @@ -1446,15 +1438,12 @@ static bool cgfsng_escape() if (lxc_write_to_file(fullpath, "0", 2, false) != 0) { SYSERROR("Failed to escape to %s", fullpath); free(fullpath); - goto out; + return false; } free(fullpath); } - ret = true; -out: - free_handler_data(d); - return ret; + return true; } static int cgfsng_num_hierarchies(void)