From: Justin Tee <justin.tee@broadcom.com>
Date: Tue, 31 Oct 2023 19:12:20 +0000 (-0700)
Subject: scsi: lpfc: Return early in lpfc_poll_eratt() when the driver is unloading
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=57ea41eb7fe6d6a6bf80f40de9acddb33b41eeb9;p=linux.git

scsi: lpfc: Return early in lpfc_poll_eratt() when the driver is unloading

Add a check in lpfc_poll_eratt() when the driver is unloading.  There is no
point to check for error attention events if the driver is rmmod'ed.

If the driver is reloaded, as part of insmod initialization, then a fresh
reset is always asserted to start clean and free of error attention events.

Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Link: https://lore.kernel.org/r/20231031191224.150862-6-justintee8345@gmail.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
---

diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
index 9386e7b447506..2cb327efd57dc 100644
--- a/drivers/scsi/lpfc/lpfc_sli.c
+++ b/drivers/scsi/lpfc/lpfc_sli.c
@@ -3938,6 +3938,9 @@ void lpfc_poll_eratt(struct timer_list *t)
 	if (!(phba->hba_flag & HBA_SETUP))
 		return;
 
+	if (phba->pport->load_flag & FC_UNLOADING)
+		return;
+
 	/* Here we will also keep track of interrupts per sec of the hba */
 	sli_intr = phba->sli.slistat.sli_intr;