]> code.ossystems Code Review - openembedded-core.git/blob
ef2d868048ca481b2612a53ce7c78d8f99729fa3
[openembedded-core.git] /
1 This is a direct backport from systemd-233's stream to fix lxc/docker.
2
3 % lxc-start -n container -F
4 lxc-start: cgfsng.c: parse_hierarchies: 825 Failed to find current cgroup for controller 'name=systemd'
5 lxc-start: cgfsng.c: all_controllers_found: 431 no systemd controller mountpoint found
6 lxc-start: start.c: lxc_spawn: 1082 failed initializing cgroup support
7 lxc-start: start.c: __lxc_start: 1332 failed to spawn 'container'
8 lxc-start: lxc_start.c: main: 344 The container failed to start.
9 lxc-start: lxc_start.c: main: 348 Additional information can be obtained by setting the --logfile and --logpriority options.
10
11 ## begin backport ##
12
13 From 843d5baf6aad6c53fc00ea8d95d83209a4f92de1 Mon Sep 17 00:00:00 2001
14 From: Martin Pitt <martin.pitt@ubuntu.com>
15 Date: Thu, 10 Nov 2016 05:33:13 +0100
16 Subject: [PATCH] core: don't use the unified hierarchy for the systemd cgroup
17  yet (#4628)
18
19 Too many things don't get along with the unified hierarchy yet:
20
21  * https://github.com/opencontainers/runc/issues/1175
22  * https://github.com/docker/docker/issues/28109
23  * https://github.com/lxc/lxc/issues/1280
24
25 So revert the default to the legacy hierarchy for now. Developers of the above
26 software can opt into the unified hierarchy with
27 "systemd.legacy_systemd_cgroup_controller=0".
28 ---
29  src/basic/cgroup-util.c | 4 ++--
30  1 file changed, 2 insertions(+), 2 deletions(-)
31
32 diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
33 index 5e73753..dc13025 100644
34 --- a/src/basic/cgroup-util.c
35 +++ b/src/basic/cgroup-util.c
36 @@ -2423,10 +2423,10 @@ bool cg_is_unified_systemd_controller_wanted(void) {
37  
38                  r = get_proc_cmdline_key("systemd.legacy_systemd_cgroup_controller=", &value);
39                  if (r < 0)
40 -                        return true;
41 +                        return false;
42  
43                  if (r == 0)
44 -                        wanted = true;
45 +                        wanted = false;
46                  else
47                          wanted = parse_boolean(value) <= 0;
48          }
49 -- 
50 2.10.1
51