cgroup: Disable cgroup "memory" by default

Some Raspberry Pis have limited RAM and most users won't use the
cgroup memory support so it is disabled by default. Enable with:

    cgroup_enable=memory

See: https://github.com/raspberrypi/linux/issues/1950

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
This commit is contained in:
Phil Elwell
2017-11-27 17:14:54 +00:00
committed by popcornmix
parent b92699a276
commit addae313c5

View File

@@ -5720,6 +5720,8 @@ int __init cgroup_init_early(void)
}
static u16 cgroup_disable_mask __initdata;
static u16 cgroup_enable_mask __initdata;
static int __init cgroup_disable(char *str);
/**
* cgroup_init - cgroup initialization
@@ -5759,6 +5761,12 @@ int __init cgroup_init(void)
mutex_unlock(&cgroup_mutex);
/* Apply an implicit disable... */
cgroup_disable("memory");
/* ...knowing that an explicit enable will override it. */
cgroup_disable_mask &= ~cgroup_enable_mask;
for_each_subsys(ss, ssid) {
if (ss->early_init) {
struct cgroup_subsys_state *css =
@@ -6178,6 +6186,28 @@ static int __init cgroup_disable(char *str)
}
__setup("cgroup_disable=", cgroup_disable);
static int __init cgroup_enable(char *str)
{
struct cgroup_subsys *ss;
char *token;
int i;
while ((token = strsep(&str, ",")) != NULL) {
if (!*token)
continue;
for_each_subsys(ss, i) {
if (strcmp(token, ss->name) &&
strcmp(token, ss->legacy_name))
continue;
cgroup_enable_mask |= 1 << i;
}
}
return 1;
}
__setup("cgroup_enable=", cgroup_enable);
void __init __weak enable_debug_cgroup(void) { }
static int __init enable_cgroup_debug(char *str)