Author: mav
Date: Tue Sep 15 10:57:16 2015
New Revision: 287819
URL: https://svnweb.freebsd.org/changeset/base/287819

Log:
  Make CAM log errors that make it wait.
  
  Waiting can take minutes, and it would be good for user to know what is
  going on.
  
  MFC after:    2 weeks

Modified:
  head/sys/cam/scsi/scsi_all.c
  head/sys/cam/scsi/scsi_all.h

Modified: head/sys/cam/scsi/scsi_all.c
==============================================================================
--- head/sys/cam/scsi/scsi_all.c        Tue Sep 15 10:42:53 2015        
(r287818)
+++ head/sys/cam/scsi/scsi_all.c        Tue Sep 15 10:57:16 2015        
(r287819)
@@ -1080,7 +1080,7 @@ static struct asc_table_entry asc_table[
        { SST(0x04, 0x00, SS_RDEF,
            "Logical unit not ready, cause not reportable") },
        /* DTLPWROMAEBKVF */
-       { SST(0x04, 0x01, SS_TUR | SSQ_MANY | SSQ_DECREMENT_COUNT | EBUSY,
+       { SST(0x04, 0x01, SS_WAIT | EBUSY,
            "Logical unit is in process of becoming ready") },
        /* DTLPWROMAEBKVF */
        { SST(0x04, 0x02, SS_START | SSQ_DECREMENT_COUNT | ENXIO,
@@ -1107,7 +1107,7 @@ static struct asc_table_entry asc_table[
        { SST(0x04, 0x09, SS_RDEF,      /* XXX TBD */
            "Logical unit not ready, self-test in progress") },
        /* DTLPWROMAEBKVF */
-       { SST(0x04, 0x0A, SS_TUR | SSQ_MANY | SSQ_DECREMENT_COUNT | ENXIO,
+       { SST(0x04, 0x0A, SS_WAIT | ENXIO,
            "Logical unit not accessible, asymmetric access state transition")},
        /* DTLPWROMAEBKVF */
        { SST(0x04, 0x0B, SS_FATAL | ENXIO,
@@ -1122,7 +1122,7 @@ static struct asc_table_entry asc_table[
        { SST(0x04, 0x10, SS_RDEF,      /* XXX TBD */
            "Logical unit not ready, auxiliary memory not accessible") },
        /* DT  WRO AEB VF */
-       { SST(0x04, 0x11, SS_TUR | SSQ_MANY | SSQ_DECREMENT_COUNT | EBUSY,
+       { SST(0x04, 0x11, SS_WAIT | EBUSY,
            "Logical unit not ready, notify (enable spinup) required") },
        /*        M    V  */
        { SST(0x04, 0x12, SS_RDEF,      /* XXX TBD */

Modified: head/sys/cam/scsi/scsi_all.h
==============================================================================
--- head/sys/cam/scsi/scsi_all.h        Tue Sep 15 10:42:53 2015        
(r287818)
+++ head/sys/cam/scsi/scsi_all.h        Tue Sep 15 10:57:16 2015        
(r287819)
@@ -103,6 +103,9 @@ typedef enum {
 /* The retyable, error action, with table specified error code */
 #define        SS_RET          SS_RETRY|SSQ_DECREMENT_COUNT|SSQ_PRINT_SENSE
 
+/* Wait for transient error status to change */
+#define        SS_WAIT         
SS_TUR|SSQ_MANY|SSQ_DECREMENT_COUNT|SSQ_PRINT_SENSE
+
 /* Fatal error action, with table specified error code */
 #define        SS_FATAL        SS_FAIL|SSQ_PRINT_SENSE
 
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to