From: Michael Tremer Date: Sat, 27 Mar 2021 16:12:10 +0000 (+0000) Subject: cgroup: Only enable controllers for parent groups X-Git-Tag: 0.9.28~1285^2~458 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=69cfa22d2e8776f47cb003766bc7c13c9a6dac21;p=pakfire.git cgroup: Only enable controllers for parent groups Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/cgroup.c b/src/libpakfire/cgroup.c index 3bc536867..db1c9e423 100644 --- a/src/libpakfire/cgroup.c +++ b/src/libpakfire/cgroup.c @@ -221,9 +221,19 @@ int pakfire_cgroup_create(Pakfire pakfire, const char* group) { char* parent = pakfire_cgroup_parent_name(group); if (parent) { int r = pakfire_cgroup_create(pakfire, parent); + if (r) { + free(parent); + return r; + } + + // Enable default controllers in all parent groups + r = pakfire_cgroup_enable_controllers(pakfire, parent, cgroup_controllers); + if (r) { + free(parent); + return r; + } + free(parent); - if (r) - return 1; } // Make path @@ -248,13 +258,6 @@ int pakfire_cgroup_create(Pakfire pakfire, const char* group) { DEBUG(pakfire, "Created cgroup %s\n", group); - // Enable default controllers - r = pakfire_cgroup_enable_controllers(pakfire, group, cgroup_controllers); - if (r) { - pakfire_cgroup_destroy(pakfire, group); - return r; - } - return 0; }