[PATCH] Only ummount /proc, /sys, /dev if the root source is '/'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: "Daniel P. Berrange" <berrange@xxxxxxxxxx>

Previous commits added code to unmount the existing /proc,
/sys and /dev hierarchies on the root filesystem of the
container. This should only have been done if the container's
root filesystem was the same as the host's root. ie if
the root source is '/'.   As it is, this causes LXC containersr
to fail to start if their root source is not '/'

Signed-off-by: Daniel P. Berrange <berrange@xxxxxxxxxx>
---
 src/lxc/lxc_container.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c
index 4f8703c..145accb 100644
--- a/src/lxc/lxc_container.c
+++ b/src/lxc/lxc_container.c
@@ -1416,12 +1416,14 @@ static int lxcContainerSetupPivotRoot(virDomainDefPtr vmDef,
     if (lxcContainerPivotRoot(root) < 0)
         goto cleanup;
 
-    /* Gets rid of any existing stuff under /proc, /sys & /tmp
+    /* If we have the root source being '/', then we need to
+     * get 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)
+    if (STREQ(root->src, "/") &&
+        (lxcContainerUnmountSubtree("/sys", false) < 0 ||
+         lxcContainerUnmountSubtree("/dev", false) < 0 ||
+         lxcContainerUnmountSubtree("/proc", false) < 0))
         goto cleanup;
 
     /* Mounts the core /proc, /sys, etc filesystems */
-- 
1.7.10.4

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list


[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]