Okay, I've got some more info now. It looks like the initial call to
"list-devices cd" occurs before the usb-storage device scan is complete
or at least before the sysfs files have settled. This device scan can
take much longer if the CD/DVD drive is completely spun down.

I am not proud of this code and I sincerely hope someone else can think
of a better way to do this...



--- cdrom-detect.postinst.orig  2010-09-21 19:20:44.000000000 +0000
+++ cdrom-detect.postinst       2010-09-21 19:19:29.000000000 +0000
@@ -73,6 +73,19 @@

 mkdir /cdrom 2>/dev/null || true

+# Need to wait for the usb device scan to complete
+if [ "$OS" == "linux" ]; then
+  for count in 1 2 3 4 5 6 8 9 10; do
+    devices="$(list-devices cd; list-devices maybe-usb-floppy)"
+    log "Devices: '$devices'"
+    if [ -n "$devices" ]; then
+      break 2
+    else
+      sleep 1
+    fi
+  done
+fi
+
 while true; do
        WRONG=



Again, steps to reproduce (so someone other than me can test this):

1) Boot install CD on external USB CD-ROM drive (preferably bus powered)
2) Wait for a minute or two for the drive to spin down / go to sleep
3) Hit Enter to install Debian

Tony



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to