From: Royce M. I. <ro...@ev...> - 2002-09-04 20:48:12
|
Eric, I put in the following code where you suggested. The OS is locking up before it gets to the page fault. I don't have the screen capture, but will get it to you as soon as I get a chance. > if (DeviceStatus & IDE_SR_BUSY) > { > /* Wait for BUSY to drop */ > for (Retries = 0; Retries < IDE_MAX_BUSY_RETRIES; Retries) > { > DeviceStatus = IDEReadStatus(CommandPortBase); > if (!(DeviceStatus & IDE_SR_BUSY)) > { > break; > } > ScsiPortStallExecution(10); > } > if (Retries >= IDE_MAX_BUSY_RETRIES) > { > DPRINT1("Drive is BUSY for too long\n"); > /* FIXME: handle timeout */ > } > } |