--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
-@@ -6046,6 +6046,9 @@ int __init cgroup_init_early(void)
+@@ -6061,6 +6061,9 @@ int __init cgroup_init_early(void)
return 0;
}
/**
* cgroup_init - cgroup initialization
*
-@@ -6079,6 +6082,12 @@ int __init cgroup_init(void)
+@@ -6094,6 +6097,12 @@ int __init cgroup_init(void)
- mutex_unlock(&cgroup_mutex);
+ cgroup_unlock();
+ /*
+ * Apply an implicit disable, knowing that an explicit enable will
for_each_subsys(ss, ssid) {
if (ss->early_init) {
struct cgroup_subsys_state *css =
-@@ -6717,6 +6726,10 @@ static int __init cgroup_disable(char *s
+@@ -6734,6 +6743,10 @@ static int __init cgroup_disable(char *s
strcmp(token, ss->legacy_name))
continue;
static_branch_disable(cgroup_subsys_enabled_key[i]);
pr_info("Disabling %s control group subsystem\n",
ss->name);
-@@ -6735,6 +6748,31 @@ static int __init cgroup_disable(char *s
+@@ -6752,6 +6765,31 @@ static int __init cgroup_disable(char *s
}
__setup("cgroup_disable=", cgroup_disable);