Author: freetz                       Date: Thu Jan 26 16:57:47 2006 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- retrigger events/wait for events

---- Files affected:
SOURCES:
   start_udev (1.30 -> 1.31) 

---- Diffs:

================================================================
Index: SOURCES/start_udev
diff -u SOURCES/start_udev:1.30 SOURCES/start_udev:1.31
--- SOURCES/start_udev:1.30     Thu Jan 26 17:49:20 2006
+++ SOURCES/start_udev  Thu Jan 26 17:57:42 2006
@@ -106,17 +106,54 @@
 
 if [ -f "/sys/class/tty/console/uevent" ]; then
        # Start udevd daemon
-       udevd -d
+       udevd --daemon
        
         # Making extra nodes
        make_extra_nodes
        
         # Setting default hotplug handler
        set_hotplug_handler
+       
+       # retrigger all events
+       mkdir -p /dev/.udev/queue
+       list=$(echo /sys/bus/*/devices/*/uevent)
+       list="$list $(echo /sys/class/*/*/uevent)"
+       list="$list $(echo /sys/block/*/uevent /sys/block/*/*/uevent)"
+       for i in $list; do
+           case "$i" in
+               */device/uevent|*\**)
+                   continue
+                   ;;
+               */class/mem/*|*/class/tty/*)
+                   first="$first $i"
+                   ;;
+               */block/md*)
+                   last="$last $i"
+                   ;;
+               */*)
+                   default="$default $i"
+                   ;;
+           esac
+       done
+
+       # trigger the sorted events
+       for i in $first $default $last; do
+           echo "add" > "$i"
+       done
+
+
+       # wait for the events to finish
+       loop=300
+       while test -d /dev/.udev/queue; do
+           sleep 0.1;
+           test "$loop" -gt 0 || break
+           loop=$(($loop - 1))
+       done
 else
-    echo "udev requires a kernel >= 2.6.15, not started."
-    exit 0                                                
+       echo "udev requires a kernel >= 2.6.15, not started."
+       exit 0                                                
 fi
+
 ret=$(( $ret + $? ))
 [ $ret -eq 0 ] && ok || fail
 exit 0
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SOURCES/start_udev?r1=1.30&r2=1.31&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to