]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Remove sub-mounts under /dev when starting an LXC container
authorDaniel P. Berrange <berrange@redhat.com>
Fri, 29 Jun 2012 15:29:33 +0000 (16:29 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Fri, 29 Jun 2012 15:29:33 +0000 (16:29 +0100)
Since we are mounting a new /dev in the container, we must
remove any sub-mounts like /dev/shm, /dev/mqueue, etc,
otherwise they'll be recorded in /proc/mounts, but not be
accessible to applications.

src/lxc/lxc_container.c

index 071d8d1bf09681309b0fb4d0bcdd14c248aabc69..910e82b4a5112dadefdc947606455e08a00b450c 100644 (file)
@@ -1416,10 +1416,11 @@ static int lxcContainerSetupPivotRoot(virDomainDefPtr vmDef,
     if (lxcContainerPivotRoot(root) < 0)
         goto cleanup;
 
-    /* Gets rid of any existing stuff under /proc, since we need new
-     * namespace aware versions of those. We must do /proc second
-     * otherwise we won't find /proc/mounts :-) */
+    /* Gets rid of any existing stuff under /proc, /sys & /tmp
+     * We need new namespace aware versions of those. We must
+     * do /proc last otherwise we won't find /proc/mounts :-) */
     if (lxcContainerUnmountSubtree("/sys", false) < 0 ||
+        lxcContainerUnmountSubtree("/dev", false) < 0 ||
         lxcContainerUnmountSubtree("/proc", false) < 0)
         goto cleanup;