]> git.proxmox.com Git - mirror_lxc.git/commit - src/lxc/cgroups/cgfs.c
fix attach when cgroups mounted after container start
authorDwight Engen <dwight.engen@oracle.com>
Wed, 26 Feb 2014 18:54:58 +0000 (13:54 -0500)
committerStéphane Graber <stgraber@ubuntu.com>
Wed, 26 Feb 2014 19:54:04 +0000 (14:54 -0500)
commitc661b0a8fe9ea261862c5fb72835dd3a59e8cf96
tree7544a0f01c6dee93417572c9319c116c6d43fef8
parenta1b6244eb510affcd448a9ddf25603e532f4dec6
fix attach when cgroups mounted after container start

When booting an OL7 container on OL6, systemd in the OL7 container mounted
some extra cgroup controllers, which are then present in /proc/self/cgroups
of every task on the host. This is the list used by attach to determine
which cgroups to move the attached task into, but when it asks the container
over the command interface for the path to the subsystem this will fail
since the controller didn't exist when the container was first started.

Instead of failing, this change allows the attach to continue, warning that
those cgroups that could not be found won't be attached to.

The problem can be more simply reproduced by starting a busybox container,
mounting a cgroup that was not previously mounted, and then attempting
to attach to to the busybox container.

The problem will likely not manifest with cgmanager since it only requests
the path for the first controller, which is likely to always be mounted.

Signed-off-by: Dwight Engen <dwight.engen@oracle.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
src/lxc/cgfs.c