|
|
|
@ -205,7 +205,8 @@ getarg 'rd.break=pre-trigger' 'rdbreak=pre-trigger' && emergency_shell -n pre-tr
@@ -205,7 +205,8 @@ getarg 'rd.break=pre-trigger' 'rdbreak=pre-trigger' && emergency_shell -n pre-tr
|
|
|
|
|
source_hook pre-trigger |
|
|
|
|
|
|
|
|
|
# then the rest |
|
|
|
|
udevadm trigger --action=add $udevtriggeropts >/dev/null 2>&1 |
|
|
|
|
udevadm trigger --type=subsystems --action=add >/dev/null 2>&1 |
|
|
|
|
udevadm trigger --type=devices --action=add >/dev/null 2>&1 |
|
|
|
|
|
|
|
|
|
getarg 'rd.break=initqueue' 'rdbreak=initqueue' && emergency_shell -n initqueue "Break before initqueue" |
|
|
|
|
|
|
|
|
@ -246,6 +247,9 @@ while :; do
@@ -246,6 +247,9 @@ while :; do
|
|
|
|
|
# no more udev jobs and queues empty. |
|
|
|
|
sleep 0.5 |
|
|
|
|
|
|
|
|
|
if [ ! -e /sys/module/block/parameters/uevent ]; then |
|
|
|
|
# if the kernel does not support autopolling |
|
|
|
|
# then we have to do a |
|
|
|
|
# dirty hack for some cdrom drives, |
|
|
|
|
# which report no medium for quiet |
|
|
|
|
# some time. |
|
|
|
@ -254,17 +258,9 @@ while :; do
@@ -254,17 +258,9 @@ while :; do
|
|
|
|
|
# skip, if cdrom medium was already found |
|
|
|
|
strstr "$(udevadm info --query=env --path=${cdrom##/sys})" \ |
|
|
|
|
ID_CDROM_MEDIA && continue |
|
|
|
|
|
|
|
|
|
if [ -e "$cdrom"/events_poll_msecs -a ! -e "/tmp/.poll_${cdrom##*/}" ]; then |
|
|
|
|
msecs=$(while read a; do echo $a;done < "$cdrom"/events_poll_msecs) |
|
|
|
|
if [ "$msecs" = "-1" ]; then |
|
|
|
|
echo 250 > "$cdrom"/events_poll_msecs |
|
|
|
|
> "/tmp/.poll_${cdrom##*/}" |
|
|
|
|
fi |
|
|
|
|
else |
|
|
|
|
echo change > "$cdrom/uevent" |
|
|
|
|
fi |
|
|
|
|
done |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
if [ $main_loop -gt $(($RDRETRY/2)) ]; then |
|
|
|
|
for job in $hookdir/initqueue/timeout/*.sh; do |
|
|
|
|