[SCSI] Handle MLQUEUE busy response in scsi_send_eh_cmnd
authorHannes Reinecke <hare@suse.de>
Thu, 25 Apr 2013 06:10:00 +0000 (08:10 +0200)
committerJames Bottomley <JBottomley@Parallels.com>
Fri, 10 May 2013 14:47:44 +0000 (07:47 -0700)
commitfc73648a5026dcf228aadc6ab8ca4b868d91c159
tree69120446e56d07168c8971763841ed3aba471ad8
parentd522844a315233162dd715c620c14ac47110eeca
[SCSI] Handle MLQUEUE busy response in scsi_send_eh_cmnd

scsi_send_eh_cmnd() is calling queuecommand() directly, so
it needs to check the return value here.
The only valid return codes for queuecommand() are 'busy'
states, so we need to wait for a bit to allow the LLDD
to recover.

Based on an earlier patch from Wen Xiong.

[jejb: fix confusion between msec and jiffies values and other issues]
[bvanassche: correct stall_for interval]
Cc: Wen Xiong <wenxiong@linux.vnet.ibm.com>
Cc: Brian King <brking@linux.vnet.ibm.com>
Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/scsi_error.c