Hello Developers,

using Gentoo's   lxc-0.8.0_rc1-r4  with a Kernel  gentoo-sources-3.3.5  I 
observe the following issue concerning the cgroupfs:

For reasons of compatibility I have still mounted the controllers of the 
cgroupfs at a single mountpoint  /cgroup/ . 

        # grep cgroup /etc/fstab:
        cgroup                  /cgroup         cgroup          defaults        
0 0

After a bootstrap of the host this shows up as

        # grep cgroup /proc/mounts 
        cgroup /cgroup cgroup 
rw,relatime,blkio,freezer,devices,memory,cpuacct,cpu,cpuset 0 0    



If I now try to start the first container, it will fail  (for *any* previous 
well working container). The important messages in the log are:


      lxc-start 1340194612.650 INFO     lxc_cgroup - [1] found cgroup mounted 
at '/cgroup',opts='rw,relatime,blkio,freezer,devices,memory,cpuacct,cpu,cpuset'
      lxc-start 1340194612.650 DEBUG    lxc_cgroup - get_init_cgroup: found 
init cgroup for subsys (null) at /


      lxc-start 1340194612.650 DEBUG    lxc_cgroup - cgroup /cgroup has flags 
0x0
      lxc-start 1340194612.682 INFO     lxc_cgroup - created cgroup 
'/cgroup//lxc/testcat0'
      lxc-start 1340194612.682 DEBUG    lxc_cgroup - checking '/proc/bus/usb' 
(usbfs)
      lxc-start 1340194612.683 DEBUG    lxc_conf - move '(null)' to '10591'
      lxc-start 1340194612.762 DEBUG    lxc_start - Dropped cap_sys_boot

      lxc-start 1340194612.762 INFO     lxc_conf - '' hostname has been setup
      lxc-start 1340194612.792 DEBUG    lxc_conf - mac address 
'00:50:C2:45:3C:14' on 'eth0' has been setup
      lxc-start 1340194612.795 DEBUG    lxc_conf - 'eth0' has been setup
      lxc-start 1340194612.795 INFO     lxc_conf - network has been setup
      lxc-start 1340194612.795 DEBUG    lxc_conf - mounted 
'/etc/lxc/testcat0/rootfs' on '/usr/lib/lxc/rootfs'
        [...]
      lxc-start 1340194612.797 INFO     lxc_conf - mount points have been setup
      lxc-start 1340194612.798 ERROR    lxc_conf - No such file or directory - 
failed to mount '/cgroup/testcat0' on '/usr/lib/lxc/rootfs/cgroup'  <<-- SHOULD 
BE /cgroup/lxc/testcat0  HERE ???
      lxc-start 1340194612.798 ERROR    lxc_conf - failed to setup the mount 
entries for 'testcat0'
      lxc-start 1340194612.798 ERROR    lxc_start - failed to setup the 
container
      lxc-start 1340194612.798 ERROR    lxc_sync - invalid sequence number 1. 
expected 2
      lxc-start 1340194612.799 ERROR    lxc_start - failed to spawn 'testcat0'
      lxc-start 1340194612.799 DEBUG    lxc_cgroup - get_init_cgroup: found 
init cgroup for subsys (null) at /


      lxc-start 1340194612.799 DEBUG    lxc_cgroup - destroying 
/cgroup//lxc/testcat0

      lxc-start 1340194612.858 DEBUG    lxc_cgroup - '/cgroup//lxc/testcat0' 
unlinked




After this first try, there is the new lxc super directory  /cgroups/lxc  and 
the mount options of the cgroupfs now show an additional  clone_childern

        cgroup /cgroup cgroup 
rw,relatime,blkio,freezer,devices,memory,cpuacct,cpu,cpuset,clone_children 0 0  
  

respectively  /cgroup/cgroup.clone_children  is 1.


As from now, starting of the containers will work:

      lxc-start 1340194763.755 INFO     lxc_cgroup - [1] found cgroup mounted 
at 
'/cgroup',opts='rw,relatime,blkio,freezer,devices,memory,cpuacct,cpu,cpuset,clone_children'
      lxc-start 1340194763.755 DEBUG    lxc_cgroup - get_init_cgroup: found 
init cgroup for subsys (null) at /


      lxc-start 1340194763.755 DEBUG    lxc_cgroup - cgroup /cgroup has flags 
0x0
      lxc-start 1340194763.798 INFO     lxc_cgroup - created cgroup 
'/cgroup//lxc/testcat0'
      lxc-start 1340194763.798 DEBUG    lxc_cgroup - checking '/proc/bus/usb' 
(usbfs)
      lxc-start 1340194763.799 DEBUG    lxc_conf - move '(null)' to '10730'
      lxc-start 1340194763.858 DEBUG    lxc_start - Dropped cap_sys_boot

      lxc-start 1340194763.858 INFO     lxc_conf - '' hostname has been setup
      lxc-start 1340194763.900 DEBUG    lxc_conf - mac address 
'00:50:C2:45:3C:14' on 'eth0' has been setup
      lxc-start 1340194763.904 DEBUG    lxc_conf - 'eth0' has been setup
      lxc-start 1340194763.904 INFO     lxc_conf - network has been setup
      lxc-start 1340194763.904 DEBUG    lxc_conf - mounted 
'/etc/lxc/testcat0/rootfs' on '/usr/lib/lxc/rootfs'
        [...]
      lxc-start 1340194763.905 INFO     lxc_conf - mount points have been setup
      lxc-start 1340194763.906 DEBUG    lxc_conf - remounting 
/cgroup/lxc/testcat0 on /usr/lib/lxc/rootfs/cgroup to respect bind or remount 
options
      lxc-start 1340194763.906 DEBUG    lxc_conf - mounted 
'/cgroup/lxc/testcat0' on '/usr/lib/lxc/rootfs/cgroup', type 'none'
      lxc-start 1340194763.906 INFO     lxc_conf - mount points have been setup
      lxc-start 1340194763.906 DEBUG    lxc_cgroup - lxc_cgroup_path_get: 
called for subsys devices name testcat0

      lxc-start 1340194763.907 DEBUG    lxc_cgroup - using cgroup mounted at 
'/cgroup/lxc'
      lxc-start 1340194763.907 DEBUG    lxc_cgroup - lxc_cgroup_path_get: 
returning /cgroup/lxc/testcat0 for subsystem devices.deny
      lxc-start 1340194763.907 DEBUG    lxc_conf - cgroup 'devices.deny' set to 
'a'
      lxc-start 1340194763.907 DEBUG    lxc_cgroup - lxc_cgroup_path_get: 
called for subsys devices name testcat0


If manually clear or set  /cgroup/cgroup.clone_children  and delete/create  
/cgroup/lxc  it shows, that especial the absence of the lxc super-directory 
will reproduce the issue. It will be created by the first start of lxc 
afterwards (and never removed afterwards), but not yet used in this run. 
Therefore, a quick workaround is to create it in the host init scripts.



greetings

Guido


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Lxc-devel mailing list
Lxc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lxc-devel

Reply via email to