chiark / gitweb /
cgroup-util: fix the case of default=unified, unified-cgroup-hierarchy=0
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Thu, 23 Feb 2017 00:55:31 +0000 (19:55 -0500)
committerSven Eden <yamakuzure@gmx.net>
Mon, 17 Jul 2017 15:58:36 +0000 (17:58 +0200)
We should mount the hybrid hierarchy if the user disabled the unified
hierarchy on the kernel command line.

src/basic/cgroup-util.c

index f5b2fe6b6ece63fbcfa8b13f9a2e0b68ed0d0279..09c895804820bf0a3308df699592f9e556c5f18c 100644 (file)
@@ -2513,7 +2513,10 @@ bool cg_is_hybrid_wanted(void) {
         static thread_local int wanted = -1;
         int r;
         bool b;
-        const bool is_default = DEFAULT_HIERARCHY == CGROUP_UNIFIED_SYSTEMD;
+        const bool is_default = DEFAULT_HIERARCHY >= CGROUP_UNIFIED_SYSTEMD;
+        /* We default to true if the default is "hybrid", obviously,
+         * but also when the default is "unified", because if we get
+         * called, it means that unified hierarchy was not mounted. */
 
         /* If we have a cached value, return that. */
         if (wanted >= 0)