]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
fix lxc-ls with mtab != /proc/mounts
authorSerge E. Hallyn <serge.hallyn@canonical.com>
Tue, 9 Aug 2011 14:51:01 +0000 (16:51 +0200)
committerDaniel Lezcano <dlezcano@fr.ibm.com>
Tue, 9 Aug 2011 14:51:01 +0000 (16:51 +0200)
The cgroup mounts created by cgroup-bin do not show up in /etc/mtab.
lxc-ls, as lxc-ps before it, assumes that /etc/mtab is symlinked to
/proc/mounts.
Author: Serge Hallyn <serge.hallyn@canonical.com>
Forwarded: no
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/819319

Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
src/lxc/lxc-ls.in

index 3cd7c24e882c57c4bd4c1fc723ed7e7ddbf4ffc3..ee7f49b55b5676ed6e5d405d59487c498e3f8331 100644 (file)
@@ -10,12 +10,16 @@ function get_cgroup()
 {
        local mount_string
        mount_string=$(mount -t cgroup |grep -E -e '^lxc ')
-       if test -z "$mount_string"; then
-               mount_string=$(mount |grep -m1 'type cgroup')
-       fi
        if test -n "$mount_string"; then
                mount_point=$(echo $mount_string |cut -d' ' -f3)
+               return
+       fi
+       mount_string=`grep -m1 -E '^[^ \t]+[ \t]+[^ \t]+[ \t]+cgroup' /proc/self/mounts`;
+       if test -z "$mount_string"; then
+               echo "failed to find mounted cgroup"
+               exit 1
        fi
+       mount_point=`echo "$mount_string" |cut -d' ' -f2`;
 }
 
 ls "$@" $lxcpath