diff options
author | Justin Tee <justin.tee@broadcom.com> | 2024-07-26 16:15:10 -0700 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2024-08-02 21:48:05 -0400 |
commit | 1f0f7679ad8942f810b0f19ee9cf098c3502d66a (patch) | |
tree | 9402d34c11c4430c1ed7a8295c964f38ee687b62 /drivers/scsi/initio.c | |
parent | b5c18c9dd138733c16893613345af44deadcf05e (diff) |
scsi: lpfc: Update PRLO handling in direct attached topology
A kref imbalance occurs when handling an unsolicited PRLO in direct
attached topology.
Rework PRLO rcv handling when in MAPPED state. Save the state that we were
handling a PRLO by setting nlp_last_elscmd to ELS_CMD_PRLO. Then in the
lpfc_cmpl_els_logo_acc() completion routine, manually restart discovery.
By issuing the PLOGI, which nlp_gets, before nlp_put at the end of the
lpfc_cmpl_els_logo_acc() routine, we are saving us from a final nlp_put.
And, we are still allowing the unreg_rpi to happen.
Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Link: https://lore.kernel.org/r/20240726231512.92867-7-justintee8345@gmail.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/initio.c')
0 files changed, 0 insertions, 0 deletions