A change in remote port removal introduced a spurious put which
can cause a premature structure teardown. The affects were most
notable when the driver attempted to unload as a null pointer
would be hit.

Fix by removing the unnecessary put.

Signed-off-by: James Smart <james.sm...@broadcom.com>
---
 drivers/scsi/lpfc/lpfc_init.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
index 7e73fdc154f7..491aa95eb0f6 100644
--- a/drivers/scsi/lpfc/lpfc_init.c
+++ b/drivers/scsi/lpfc/lpfc_init.c
@@ -2805,13 +2805,6 @@ lpfc_cleanup(struct lpfc_vport *vport)
                        lpfc_disc_state_machine(vport, ndlp, NULL,
                                        NLP_EVT_DEVICE_RECOVERY);
 
-               if (ndlp->nlp_fc4_type & NLP_FC4_NVME) {
-                       /* Remove the NVME transport reference now and
-                        * continue to remove the node.
-                        */
-                       lpfc_nlp_put(ndlp);
-               }
-
                lpfc_disc_state_machine(vport, ndlp, NULL,
                                             NLP_EVT_DEVICE_RM);
        }
-- 
2.11.0

Reply via email to