mirror of
https://github.com/systemd/systemd.git
synced 2024-11-23 18:23:32 +08:00
main: don't try to mout cpuset with cpu+cpuacct anymore
Turns out cpuset needs explicit initialization before we could make use of it. Thus mounting cpuset with cpu/cpuacct would make it impossible to just create a group in "cpu" and start it.
This commit is contained in:
parent
8e41de0d2c
commit
a07fdfa376
6
TODO
6
TODO
@ -19,6 +19,12 @@ F18:
|
|||||||
|
|
||||||
Features:
|
Features:
|
||||||
|
|
||||||
|
* cryptsetup-generator: warn if the password files are world-readable
|
||||||
|
|
||||||
|
* cryptsetup-generator: add RequiresMountsFor= to cryptseup service files referencing a file, similar for devices
|
||||||
|
|
||||||
|
* cryptsetup-generator: allow specification of passwords in crypttab itself
|
||||||
|
|
||||||
* document that deps in [Unit] sections ignore Alias= fileds in
|
* document that deps in [Unit] sections ignore Alias= fileds in
|
||||||
[Install] units of other units, unless those units are disabled
|
[Install] units of other units, unless those units are disabled
|
||||||
|
|
||||||
|
@ -1227,6 +1227,28 @@ static void test_cgroups(void) {
|
|||||||
sleep(10);
|
sleep(10);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int initialize_join_controllers(void) {
|
||||||
|
/* By default, mount "cpu" + "cpuacct" together, and "net_cls"
|
||||||
|
* + "net_prio". We'd like to add "cpuset" to the mix, but
|
||||||
|
* "cpuset" does't really work for groups with no initialized
|
||||||
|
* attributes. */
|
||||||
|
|
||||||
|
arg_join_controllers = new(char**, 3);
|
||||||
|
if (!arg_join_controllers)
|
||||||
|
return -ENOMEM;
|
||||||
|
|
||||||
|
arg_join_controllers[0] = strv_new("cpu", "cpuacct", NULL);
|
||||||
|
if (!arg_join_controllers[0])
|
||||||
|
return -ENOMEM;
|
||||||
|
|
||||||
|
arg_join_controllers[1] = strv_new("net_cls", "net_prio", NULL);
|
||||||
|
if (!arg_join_controllers[1])
|
||||||
|
return -ENOMEM;
|
||||||
|
|
||||||
|
arg_join_controllers[2] = NULL;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[]) {
|
||||||
Manager *m = NULL;
|
Manager *m = NULL;
|
||||||
int r, retval = EXIT_FAILURE;
|
int r, retval = EXIT_FAILURE;
|
||||||
@ -1371,16 +1393,8 @@ int main(int argc, char *argv[]) {
|
|||||||
goto finish;
|
goto finish;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* By default, mount "cpu" and "cpuacct" together */
|
r = initialize_join_controllers();
|
||||||
arg_join_controllers = new(char**, 3);
|
if (r < 0)
|
||||||
if (!arg_join_controllers)
|
|
||||||
goto finish;
|
|
||||||
|
|
||||||
arg_join_controllers[0] = strv_new("cpu", "cpuacct", "cpuset", NULL);
|
|
||||||
arg_join_controllers[1] = strv_new("net_cls", "net_prio", NULL);
|
|
||||||
arg_join_controllers[2] = NULL;
|
|
||||||
|
|
||||||
if (!arg_join_controllers[0])
|
|
||||||
goto finish;
|
goto finish;
|
||||||
|
|
||||||
/* Mount /proc, /sys and friends, so that /proc/cmdline and
|
/* Mount /proc, /sys and friends, so that /proc/cmdline and
|
||||||
|
Loading…
Reference in New Issue
Block a user