From: Serge Hallyn Date: Wed, 27 May 2015 10:05:16 +0000 (+0000) Subject: cgmanager: attach: never use 'all' controller X-Git-Tag: lxc-1.1.3~60 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=499b4e1cf30319cdf1eec439131f5b26b8f31e24;p=thirdparty%2Flxc.git cgmanager: attach: never use 'all' controller We were using 'all' controller if current was in all the same cgroup. That doesn't suffice. We'd have to check the target. At that point we may as well just attach controller by controller. An optimization to consider is to check the /proc/initpid/cgroup for all identical controllers. Let's start by just getting it right. Signed-off-by: Serge Hallyn Acked-by: Stéphane Graber --- diff --git a/src/lxc/cgmanager.c b/src/lxc/cgmanager.c index 48b81d9dc..6b6c2d878 100644 --- a/src/lxc/cgmanager.c +++ b/src/lxc/cgmanager.c @@ -1430,16 +1430,8 @@ static bool cgm_attach(const char *name, const char *lxcpath, pid_t pid) return false; } - check_supports_multiple_controllers(pid); - - if (cgm_all_controllers_same) - slist = subsystems_inone; - for (i = 0; slist[i]; i++) { - if (slist == subsystems_inone) - cgroup = try_get_abs_cgroup(name, lxcpath, subsystems[0]); - else - cgroup = try_get_abs_cgroup(name, lxcpath, slist[i]); + cgroup = try_get_abs_cgroup(name, lxcpath, slist[i]); if (!cgroup) { ERROR("Failed to get cgroup for controller %s", slist[i]); cgm_dbus_disconnect();