]> code.ossystems Code Review - openembedded-core.git/commitdiff
init-live.sh: avoid duplicate mount points for the same filesystem
authorChen Qi <Qi.Chen@windriver.com>
Mon, 31 Dec 2012 07:55:20 +0000 (15:55 +0800)
committerSaul Wold <sgw@linux.intel.com>
Sat, 5 Jan 2013 06:12:05 +0000 (22:12 -0800)
A live system had duplicate mount points for the same filesystem
in the output of 'mount' command. That was because we didn't handle
the temporary mounts properly before switch_root.

This patch fixes this problem by moving the mount points of some
filesystems to the corresponding directories in the real root filesystem.

[YOCTO #3155]

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
meta/recipes-core/initrdscripts/files/init-live.sh

index e8d7f70c2c75652627841fcf41b71317ed8c49cf..0ae359d61715ced72695abef1afd6f5a39d72434 100644 (file)
@@ -59,10 +59,11 @@ read_args() {
 boot_live_root() {
     killall udevd 2>/dev/null
 
-    # use devtmpfs if available
-    if grep -q devtmpfs /proc/filesystems; then
-        mount -t devtmpfs devtmpfs $ROOT_MOUNT/dev
-    fi
+    # Move the mount points of some filesystems over to
+    # the corresponding directories under the real root filesystem.
+    mount -n --move /proc ${ROOT_MOUNT}/proc
+    mount -n --move /sys ${ROOT_MOUNT}/sys
+    mount -n --move /dev ${ROOT_MOUNT}/dev
 
     cd $ROOT_MOUNT
     exec switch_root -c /dev/console $ROOT_MOUNT /sbin/init