Commit e4f44d56 authored by James Bottomley's avatar James Bottomley

[PATCH SCSI] make BUSY status stall the device for a while

parent 4fac4dee
...@@ -1341,6 +1341,13 @@ int scsi_decide_disposition(Scsi_Cmnd *scmd) ...@@ -1341,6 +1341,13 @@ int scsi_decide_disposition(Scsi_Cmnd *scmd)
* the case of trying to send too many commands to a * the case of trying to send too many commands to a
* tagged queueing device. * tagged queueing device.
*/ */
case BUSY:
/*
* device can't talk to us at the moment. Should only
* occur (SAM-3) when the task queue is empty, so will cause
* the empty queue handling to trigger a stall in the
* device.
*/
return ADD_TO_MLQUEUE; return ADD_TO_MLQUEUE;
case GOOD: case GOOD:
case COMMAND_TERMINATED: case COMMAND_TERMINATED:
...@@ -1358,8 +1365,6 @@ int scsi_decide_disposition(Scsi_Cmnd *scmd) ...@@ -1358,8 +1365,6 @@ int scsi_decide_disposition(Scsi_Cmnd *scmd)
* who knows? FIXME(eric) * who knows? FIXME(eric)
*/ */
return SUCCESS; return SUCCESS;
case BUSY:
goto maybe_retry;
case RESERVATION_CONFLICT: case RESERVATION_CONFLICT:
printk("scsi%d (%d,%d,%d) : reservation conflict\n", printk("scsi%d (%d,%d,%d) : reservation conflict\n",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment