summaryrefslogtreecommitdiff
path: root/init
diff options
context:
space:
mode:
authormaximilian attems <maks@debian.org>2005-11-28 17:47:23 +0100
committermaximilian attems <maks@debian.org>2005-11-28 17:47:23 +0100
commit5952a2fe8e6484b1813faaab93783764ff9026e8 (patch)
treedcfefddf83d3a659f7c45bd12e1d5cd1b885628a /init
parent6da3bae23dc4843a543e02ca57ec26f2d77455a3 (diff)
downloadinitramfs-tools-5952a2fe8e6484b1813faaab93783764ff9026e8.tar.gz
initramfs-tools-5952a2fe8e6484b1813faaab93783764ff9026e8.zip
fix for newest upstream udev:
udev has no a queue, which we can test (loop) against. :)
Diffstat (limited to 'init')
-rwxr-xr-xinit15
1 files changed, 11 insertions, 4 deletions
diff --git a/init b/init
index a1d6923..8b00234 100755
--- a/init
+++ b/init
@@ -71,11 +71,18 @@ depmod -a
# Populate /dev tree
log_begin_msg "Initializing /dev"
-mkdir /dev/.udevdb
-UDEVD_EXPECTED_SEQNUM=$(($(cat /sys/kernel/hotplug_seqnum) + 1)) udevd --daemon
+udevd_timeout=30
+echo > /proc/sys/kernel/hotplug
+mkdir /dev/.udev /dev/.udev/db/ /dev/.udev/queue/
+udevd --daemon
udevsynthesize
-# FIXME: future udevd should have condition to test against
-sleep 5
+while [ -d /dev/.udev/queue/ ]; do
+ sleep 1
+ udevd_timeout=$(($udevd_timeout - 1))
+ if [ $udevd_timeout -eq 0 ]; then
+ break
+ fi
+done
log_end_msg
log_begin_msg "Loading modules"