[SCSI] call correct scsi_done function in scsi_dispatch_cmd
scsi_dispatch_cmd currently calls scsi_done when the device is in the SDEV_DEL state, but at this point the command has not had a timer added to it (this is done a couple lines down) so scsi_done just returns and the command is lost. The attached patch made against 2.6.12-rc3 calls __scsi_done in this case so the comamnd will be returned upwards. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
036d618434
commit
69b528936b
|
@ -542,7 +542,7 @@ int scsi_dispatch_cmd(struct scsi_cmnd *cmd)
|
|||
* that the device is no longer present */
|
||||
cmd->result = DID_NO_CONNECT << 16;
|
||||
atomic_inc(&cmd->device->iorequest_cnt);
|
||||
scsi_done(cmd);
|
||||
__scsi_done(cmd);
|
||||
/* return 0 (because the command has been processed) */
|
||||
goto out;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue