OSDN Git Service

scsi: lpfc: Update async event logging
authorJames Smart <jsmart2021@gmail.com>
Sun, 22 Sep 2019 03:59:03 +0000 (20:59 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 1 Oct 2019 02:07:11 +0000 (22:07 -0400)
This patch updates ACQE handling for:

 - an EEPROM failure error reported by the adapter.

 - ensures that all data for any ACQE, recognized or not, is logged.

 - Given that all data is now logged unconditionally, the default case
   (unrecognized) data can be reduced.

Link: https://lore.kernel.org/r/20190922035906.10977-18-jsmart2021@gmail.com
Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/lpfc/lpfc_hw4.h
drivers/scsi/lpfc/lpfc_init.c

index f70fb76..6095e3c 100644 (file)
@@ -4261,6 +4261,7 @@ struct lpfc_acqe_sli {
 #define LPFC_SLI_EVENT_TYPE_DIAG_DUMP          0x5
 #define LPFC_SLI_EVENT_TYPE_MISCONFIGURED      0x9
 #define LPFC_SLI_EVENT_TYPE_REMOTE_DPORT       0xA
+#define LPFC_SLI_EVENT_TYPE_EEPROM_FAILURE     0x10
 };
 
 /*
index 12885b0..a0aa7a5 100644 (file)
@@ -5289,10 +5289,10 @@ lpfc_sli4_async_sli_evt(struct lpfc_hba *phba, struct lpfc_acqe_sli *acqe_sli)
        evt_type = bf_get(lpfc_trailer_type, acqe_sli);
 
        lpfc_printf_log(phba, KERN_INFO, LOG_SLI,
-                       "2901 Async SLI event - Event Data1:x%08x Event Data2:"
-                       "x%08x SLI Event Type:%d\n",
+                       "2901 Async SLI event - Type:%d, Event Data: x%08x "
+                       "x%08x x%08x x%08x\n", evt_type,
                        acqe_sli->event_data1, acqe_sli->event_data2,
-                       evt_type);
+                       acqe_sli->reserved, acqe_sli->trailer);
 
        port_name = phba->Port[0];
        if (port_name == 0x00)
@@ -5439,11 +5439,16 @@ lpfc_sli4_async_sli_evt(struct lpfc_hba *phba, struct lpfc_acqe_sli *acqe_sli)
                                "Event Data1:x%08x Event Data2: x%08x\n",
                                acqe_sli->event_data1, acqe_sli->event_data2);
                break;
+       case LPFC_SLI_EVENT_TYPE_EEPROM_FAILURE:
+               /* EEPROM failure. No driver action is required */
+               lpfc_printf_log(phba, KERN_WARNING, LOG_SLI,
+                            "2518 EEPROM failure - "
+                            "Event Data1: x%08x Event Data2: x%08x\n",
+                            acqe_sli->event_data1, acqe_sli->event_data2);
+               break;
        default:
                lpfc_printf_log(phba, KERN_INFO, LOG_SLI,
-                               "3193 Async SLI event - Event Data1:x%08x Event Data2:"
-                               "x%08x SLI Event Type:%d\n",
-                               acqe_sli->event_data1, acqe_sli->event_data2,
+                               "3193 Unrecognized SLI event, type: 0x%x",
                                evt_type);
                break;
        }