scsi: lpfc: Save FPIN frequency statistics upon receipt of peer cgn notifications
authorJustin Tee <justin.tee@broadcom.com>
Wed, 31 Jan 2024 18:51:04 +0000 (10:51 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 6 Feb 2024 01:51:35 +0000 (20:51 -0500)
FPIN frequency is provided by the fabric in peer congestion notifications.

Currently, the frequency is only logged in a message, but it should also be
saved into the phba's cgn_fpin statistics member for proper application
functionality.

Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Link: https://lore.kernel.org/r/20240131185112.149731-10-justintee8345@gmail.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/lpfc/lpfc_els.c

index a17c66e..1ada8ba 100644 (file)
@@ -10131,6 +10131,9 @@ lpfc_els_rcv_fpin_peer_cgn(struct lpfc_hba *phba, struct fc_tlv_desc *tlv)
        pc_evt_str = lpfc_get_fpin_congn_event_nm(pc_evt);
        cnt = be32_to_cpu(pc->pname_count);
 
+       /* Capture FPIN frequency */
+       phba->cgn_fpin_frequency = be32_to_cpu(pc->event_period);
+
        lpfc_printf_log(phba, KERN_INFO, LOG_CGN_MGMT | LOG_ELS,
                        "4684 FPIN Peer Congestion %s (x%x) "
                        "Duration %d mSecs "