Will do. It'll be a few weeks, as I have to schedule downtime, but I'll
report back my results when it's done.
--Ted
On 06/11/2018 04:08 PM, James Bottomley wrote:
OK, try this: it will print a rate limited warning if it triggers
(showing it is this problem) and return ADD_TO_MLQUEUE for all the SAS
errors (we'll likely narrow this if it works, but for now let's do the
lot).
James
---
diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c
index 8932ae81a15a..94aa5cb94064 100644
--- a/drivers/scsi/scsi_error.c
+++ b/drivers/scsi/scsi_error.c
@@ -531,6 +531,11 @@ int scsi_check_sense(struct scsi_cmnd *scmd)
if (sshdr.asc == 0xc1 && sshdr.ascq == 0x01 &&
sdev->sdev_bflags & BLIST_RETRY_ASC_C1)
return ADD_TO_MLQUEUE;
+ if (sshdr.asc == 0x4b) {
+ printk_ratelimited(KERN_WARNING "SAS/SATA link retry\n");
+ return ADD_TO_MLQUEUE;
+ }
+
return NEEDS_RETRY;
case NOT_READY: