From: Christian Brauner Date: Tue, 2 Oct 2018 15:27:55 +0000 (+0200) Subject: cgfsng: do not reuse another monitor's cgroup X-Git-Tag: lxc-3.1.0~69^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ee455be41cd127dd9fb37f35a2ee826e637bb76d;p=thirdparty%2Flxc.git cgfsng: do not reuse another monitor's cgroup Otherwise we will create a race. Signed-off-by: Christian Brauner --- diff --git a/src/lxc/cgroups/cgfsng.c b/src/lxc/cgroups/cgfsng.c index e248db31a..0fc9b11d2 100644 --- a/src/lxc/cgroups/cgfsng.c +++ b/src/lxc/cgroups/cgfsng.c @@ -1262,8 +1262,10 @@ static bool monitor_create_path_for_hierarchy(struct hierarchy *h, char *cgname) int ret; h->monitor_full_path = must_make_path(h->mountpoint, h->container_base_path, cgname, NULL); - if (dir_exists(h->monitor_full_path)) - return true; + if (dir_exists(h->monitor_full_path)) { + ERROR("The cgroup \"%s\" already existed", h->monitor_full_path); + return false; + } if (!cg_legacy_handle_cpuset_hierarchy(h, cgname)) { ERROR("Failed to handle legacy cpuset controller");