diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c index 8c9f167788966da8b37fe283f4f688fc50bcf5c7..9f8abd440dec4d68063ece1a371743af3708bca6 100644 --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c @@ -5683,8 +5683,8 @@ int __init cgroup_init_early(void) return 0; } -static u16 cgroup_disable_mask __initdata; #ifdef CONFIG_OPENEULER_RASPBERRYPI +static u16 cgroup_disable_mask __initdata; static u16 cgroup_enable_mask __initdata; static int __init cgroup_disable(char *str); #endif @@ -5755,12 +5755,8 @@ int __init cgroup_init(void) * disabled flag and cftype registration needs kmalloc, * both of which aren't available during early_init. */ - if (cgroup_disable_mask & (1 << ssid)) { - static_branch_disable(cgroup_subsys_enabled_key[ssid]); - printk(KERN_INFO "Disabling %s control group subsystem\n", - ss->name); + if (!cgroup_ssid_enabled(ssid)) continue; - } if (cgroup1_ssid_disabled(ssid)) printk(KERN_INFO "Disabling %s control group subsystem in v1 mounts\n", @@ -6275,7 +6271,10 @@ static int __init cgroup_disable(char *str) if (strcmp(token, ss->name) && strcmp(token, ss->legacy_name)) continue; - cgroup_disable_mask |= 1 << i; + + static_branch_disable(cgroup_subsys_enabled_key[i]); + pr_info("Disabling %s control group subsystem\n", + ss->name); } } return 1;