From: Harald Hoyer Date: Tue, 13 Apr 2010 11:50:33 +0000 (+0200) Subject: init: add hacky cdrom polling mechanism X-Git-Tag: 006~81 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0e0bf830577b5538ed010cf1eb4b1a57578ac3bb;p=thirdparty%2Fdracut.git init: add hacky cdrom polling mechanism --- diff --git a/modules.d/99base/init b/modules.d/99base/init index ab7aafe29..b9b6361a7 100755 --- a/modules.d/99base/init +++ b/modules.d/99base/init @@ -186,8 +186,20 @@ while :; do # no more udev jobs and queues empty. sleep 0.5 + + # dirty hack for some cdrom drives, + # which report no medium for quiet + # some time. + for cdrom in /sys/block/sr*; do + [ -e "$cdrom" ] || continue + # skip, if cdrom medium was already found + strstr "$(udevadm info --query=env --path=${cdrom##/sys})" \ + ID_CDROM_MEDIA && continue + echo change > "$cdrom" + done + i=$(($i+1)) - [ $i -gt 20 ] \ + [ $i -gt 40 ] \ && { flock -s 9 ; emergency_shell "No root device found"; } 9>/.console_lock done unset job