summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Zanussi <tom.zanussi@intel.com>2011-02-07 13:45:45 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-02-07 21:53:42 +0000
commit6ec0e55375c9687c7ead49d1e01f81b197db7108 (patch)
treed0327c71e3aebd71902c7e6f97a09fc2a82732d2
parent36efa8933d979c1037754e37829c8be6529711e9 (diff)
downloadopenembedded-core-6ec0e55375c9687c7ead49d1e01f81b197db7108.tar.gz
openembedded-core-6ec0e55375c9687c7ead49d1e01f81b197db7108.tar.bz2
openembedded-core-6ec0e55375c9687c7ead49d1e01f81b197db7108.zip
init-live.sh: add 'coldplug' udev trigger
Fixes [BUGID #693] The init-live.sh script starts udevd in init-live.sh:early_setup(), but doesn't account for the possibility that the root device may have already been registered by the kernel before udevd starts up. If the device is detected after udevd starts up, everything's fine - udevd gets the 'add' uevent for the device, the root image shows up at e.g. /media/sda/rootfs.img, and the boot continues. If however the device is detected before udevd starts up, udevd misses the 'add' uevent and the root image never shows up, causing it to stay in the 'waiting for removable media' loop forever. The 'udevadm trigger' command is meant to be used to avoid this situation, but init-live.sh doesn't use it. Furthermore, since the default was changed in udev 152 from 'add' to 'change', the command needs to explicity name 'add' as the action. Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
-rw-r--r--meta/recipes-core/initrdscripts/files/init-live.sh1
1 files changed, 1 insertions, 0 deletions
diff --git a/meta/recipes-core/initrdscripts/files/init-live.sh b/meta/recipes-core/initrdscripts/files/init-live.sh
index c96b1f47c3..f3e514544f 100644
--- a/meta/recipes-core/initrdscripts/files/init-live.sh
+++ b/meta/recipes-core/initrdscripts/files/init-live.sh
@@ -11,6 +11,7 @@ early_setup() {
mount -t proc proc /proc
mount -t sysfs sysfs /sys
udevd --daemon
+ /sbin/udevadm trigger --action=add
}
read_args() {