Added patch from Mike Auty for udev 088+.
authorChris Gianelloni <wolf31o2@gentoo.org>
Mon, 17 Apr 2006 15:07:57 +0000 (15:07 +0000)
committerChris Gianelloni <wolf31o2@gentoo.org>
Mon, 17 Apr 2006 15:07:57 +0000 (15:07 +0000)
git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/genkernel/trunk@382 67a159dc-881f-0410-a524-ba9dfbe2cb84

gen_compile.sh
generic/initrd.scripts
generic/linuxrc

index 2c8f88bde28bc23ec5b3e3a56713a43b98d0f96a..4772e10cd08b6f8bd22e5a109fb478b5bbe552cf 100644 (file)
@@ -888,7 +888,7 @@ compile_udev() {
                # We are going to install our files by hand.  Why are we doing this?
                # Well, the udev ebuild does so, and I tend to think that Greg
                # Kroah-Hartman knows what he's doing with regards to udev.
-               for i in udev udevd udevsend udevstart
+               for i in udev udevd udevsend udevstart udevtrigger
                do
                        install -D $i "${TEMP}/udev/sbin"
                done
index 034e26f8da39ca2ed1f0b62f8c0a4d23b8d0401e..01c198b01fc11a4060de1201acd3146110ad36ef 100644 (file)
@@ -226,8 +226,21 @@ runUdev() {
        mount -t tmpfs -o size=100k udev /dev
        mkdir /dev/pts
        mkdir /dev/shm
-       echo /sbin/udevsend > /proc/sys/kernel/hotplug 
-       /sbin/udevstart
+       echo  > /proc/sys/kernel/hotplug 
+       /sbin/udevd --daemon
+       mkdir -p /dev/.udev/queue
+       /sbin/udevtrigger
+
+       good_msg 'Letting udev process events'
+       loop=0
+       while test -d /dev/.udev/queue; do
+               sleep 1;
+               test "$loop" -gt 30 && break
+               loop=$(($loop + 1))
+       done
+       good_msg "Udev finished proccsing after $loop iterations"
+
+       killall udevd > /dev/null 2>&1
        ln -snf /proc/self/fd /dev/fd
        ln -snf /proc/self/fd/0 /dev/stdin
        ln -snf /proc/self/fd/1 /dev/stdout
@@ -272,7 +285,7 @@ bind_mount_dev() {
 
 start_dev_mgr() {
        # Check udev is available...
-       if [ "${KV_2_6_OR_GREATER}" -a ! "${USE_UDEV_NORMAL}" -eq '0' -a -x /sbin/udev ]
+       if [ "${KV_2_6_OR_GREATER}" -a ! "${USE_UDEV_NORMAL}" -eq '0' -a -x /sbin/udevtrigger ]
        then
                USE_UDEV_NORMAL=1
        else
index a3b65bfd3198acbb14168b341673afe059b3f70b..e58c1645a35dae025146ef2b27122afb09ec43ef 100644 (file)
@@ -39,19 +39,6 @@ then
 
        [ -e /linuxrc ] && rm /linuxrc
         
-       if [ -e /sbin/udev ]
-       then
-               if [ ! -e /sbin/udevstart ]
-               then
-                       ln -s /sbin/udev /sbin/udevstart
-               fi
-               
-               if [ ! -e /sbin/udevsend ]
-               then
-                       ln -s /sbin/udev /sbin/udevsend
-               fi
-       fi
-
        if [ -e /bin/lvm ]
        then
                ln -s /bin/lvm /bin/vgscan