Hi Linus, Alan, There is a small problem in sd.c: If a disk doesn't become ready, the loop to try and spin it up doesn't terminate. This can be fixed by moving one statement up a few lines. Patch below (the "start of the loop time" variable (spintime_value) is set INSIDE the loop, which means that the timeout is 100 seconds from 'now' and stays that way. By moving it up into the "if" above, the value is only set on the first iteration around the loop. ) Roger. --- linux-2.4.0.clean/drivers/scsi/sd.c Fri Oct 27 08:35:48 2000 +++ linux-2.4.0.jungo/drivers/scsi/sd.c Thu Jan 25 16:18:41 2001 @@ -798,9 +798,9 @@ SRpnt->sr_data_direction = SCSI_DATA_READ; scsi_wait_req(SRpnt, (void *) cmd, (void *) buffer, 0/*512*/, SD_TIMEOUT, MAX_RETRIES); + spintime_value = jiffies; } spintime = 1; - spintime_value = jiffies; time1 = HZ; /* Wait 1 second for next try */ do { -- ** [EMAIL PROTECTED] ** http://www.BitWizard.nl/ ** +31-15-2137555 ** *-- BitWizard writes Linux device drivers for any device you may have! --* * There are old pilots, and there are bold pilots. * There are also old, bald pilots. - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [EMAIL PROTECTED]