From: Christian Brauner Date: Sat, 17 Feb 2018 18:20:23 +0000 (+0100) Subject: cgfsng: cg_hybrid_init() X-Git-Tag: lxc-2.0.10~291 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3b4a126ed0c4249bb75ca1d76d5c9dd4f851f54;p=thirdparty%2Flxc.git cgfsng: cg_hybrid_init() Signed-off-by: Christian Brauner --- diff --git a/src/lxc/cgroups/cgfsng.c b/src/lxc/cgroups/cgfsng.c index 0378ba30d..9ecbf5ac7 100644 --- a/src/lxc/cgroups/cgfsng.c +++ b/src/lxc/cgroups/cgfsng.c @@ -1186,9 +1186,8 @@ static void lxc_cgfsng_print_debuginfo(const struct cgfsng_handler_data *d) lxc_cgfsng_print_hierarchies(); } -/* - * At startup, parse_hierarchies finds all the info we need about - * cgroup mountpoints and current cgroups, and stores it in @d. +/* At startup, parse_hierarchies finds all the info we need about cgroup + * mountpoints and current cgroups, and stores it in @d. */ static bool cg_hybrid_init(void) { @@ -1200,8 +1199,7 @@ static bool cg_hybrid_init(void) char *line = NULL; char **klist = NULL, **nlist = NULL; - /* - * Root spawned containers escape the current cgroup, so use init's + /* Root spawned containers escape the current cgroup, so use init's * cgroups as our base in that case. */ will_escape = (geteuid() == 0); @@ -1214,7 +1212,7 @@ static bool cg_hybrid_init(void) ret = get_existing_subsystems(&klist, &nlist); if (ret < 0) { - CGFSNG_DEBUG("Failed to retrieve available cgroup v1 controllers\n"); + CGFSNG_DEBUG("Failed to retrieve available legacy cgroup controllers\n"); free(basecginfo); return false; } @@ -1233,7 +1231,7 @@ static bool cg_hybrid_init(void) int type; bool writeable; struct hierarchy *new; - char *mountpoint = NULL, *base_cgroup = NULL; + char *base_cgroup = NULL, *mountpoint = NULL; char **controller_list = NULL; type = get_cgroup_version(line); @@ -1300,6 +1298,7 @@ static bool cg_hybrid_init(void) if (!controller_list) controller_list = cg_unified_make_empty_controller(); } + new = add_hierarchy(controller_list, mountpoint, base_cgroup, type); if (type == CGROUP2_SUPER_MAGIC && !unified) unified = new; @@ -1321,7 +1320,7 @@ static bool cg_hybrid_init(void) free(line); if (lxc_cgfsng_debug) { - printf("writeable subsystems:\n"); + printf("Writable cgroup hierarchies:\n"); lxc_cgfsng_print_hierarchies(); }