mirror of
git://github.com/lxc/lxc
synced 2025-08-30 22:59:34 +00:00
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 <tycho.andersen@canonical.com>
This commit is contained in:
@@ -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)
|
||||
|
Reference in New Issue
Block a user