scsi: qla2xxx: Fix unintended Logout

During normal IO, FW can return IO with 'port unavailble' status.  Driver
would send a LOGO to remote port for session resync.  On an off chance, a
PLOGI could arrive before sending the LOGO.  This patch will skip sendiing
LOGO if a PLOGI just came in.

Signed-off-by: Quinn Tran <[email protected]>
Signed-off-by: Himanshu Madhani <[email protected]>
Signed-off-by: Martin K. Petersen <[email protected]>
This commit is contained in:
Quinn Tran 2018-08-02 13:16:51 -07:00 • committed by Martin K. Petersen
commit cb97f2c2e8

View file

@ -986,8 +986,9 @@ void qlt_free_session_done(struct work_struct *work)
logo.id = sess->d_id;
logo.cmd_count = 0;
if (!own)
qlt_send_first_logo(vha, &logo);
sess->send_els_logo = 0;
qlt_send_first_logo(vha, &logo);
}
if (sess->logout_on_delete && sess->loop_id != FC_NO_LOOP_ID) {