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:

Reply via email to