mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-12 00:38:55 +00:00
[SCSI] scsi_dh_rdac: Retry for NOT_READY(02/04/01) in rdac device handler
During device discovery read capacity fails with 0x020401 and sets the device size to 0. As a reason any I/O submitted to this path gets killed at sd_prep_fn with BLKPREP_KILL. This patch is to retry for 0x020401. NEED_RETRY in scsi_decide_disposition does not give sufficient time for the device to become ready. Signed-off-by: Vijay Chauhan <vijay.chauhan@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
parent
fa8584566c
commit
8f03226358
@ -561,6 +561,12 @@ static int rdac_check_sense(struct scsi_device *sdev,
|
||||
struct rdac_dh_data *h = get_rdac_data(sdev);
|
||||
switch (sense_hdr->sense_key) {
|
||||
case NOT_READY:
|
||||
if (sense_hdr->asc == 0x04 && sense_hdr->ascq == 0x01)
|
||||
/* LUN Not Ready - Logical Unit Not Ready and is in
|
||||
* the process of becoming ready
|
||||
* Just retry.
|
||||
*/
|
||||
return ADD_TO_MLQUEUE;
|
||||
if (sense_hdr->asc == 0x04 && sense_hdr->ascq == 0x81)
|
||||
/* LUN Not Ready - Storage firmware incompatible
|
||||
* Manual code synchonisation required.
|
||||
|
Loading…
x
Reference in New Issue
Block a user