Unverified Commit 8cce8b59 by Christian Brauner Committed by Stéphane Graber

cgroups: premount cgroups on cgroup2-only systems

Fixes: #3183 Cc: Thomas Moschny <thomas.moschny@gmx.de> Signed-off-by: 's avatarChristian Brauner <christian.brauner@ubuntu.com>
parent 6001872d
...@@ -1712,11 +1712,24 @@ __cgfsng_ops static bool cgfsng_mount(struct cgroup_ops *ops, ...@@ -1712,11 +1712,24 @@ __cgfsng_ops static bool cgfsng_mount(struct cgroup_ops *ops,
wants_force_mount = true; wants_force_mount = true;
} }
if (!wants_force_mount){ if (!wants_force_mount) {
if (!lxc_list_empty(&handler->conf->keepcaps)) if (!lxc_list_empty(&handler->conf->keepcaps))
wants_force_mount = !in_caplist(CAP_SYS_ADMIN, &handler->conf->keepcaps); wants_force_mount = !in_caplist(CAP_SYS_ADMIN, &handler->conf->keepcaps);
else else
wants_force_mount = in_caplist(CAP_SYS_ADMIN, &handler->conf->caps); wants_force_mount = in_caplist(CAP_SYS_ADMIN, &handler->conf->caps);
/*
* Most recent distro versions currently have init system that
* do support cgroup2 but do not mount it by default unless
* explicitly told so even if the host is cgroup2 only. That
* means they often will fail to boot. Fix this by pre-mounting
* cgroup2 by default. We will likely need to be doing this a
* few years until all distros have switched over to cgroup2 at
* which point we can safely assume that their init systems
* will mount it themselves.
*/
if (pure_unified_layout(ops))
wants_force_mount = true;
} }
has_cgns = cgns_supported(); has_cgns = cgns_supported();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment