Commit c358a3d9 authored by Quinn Tran's avatar Quinn Tran Committed by Martin K. Petersen
Browse files

scsi: qla2xxx: Fix stuck session

Session was stuck due to explicit logout to target timing out.  The target
was in an unresponsive state. This timeout induced an error to the GNL
command from moving forward.

Link: https://lore.kernel.org/r/20210329085229.4367-4-njavali@marvell.com


Tested-by: default avatarLaurence Oberman <loberman@redhat.com>
Signed-off-by: default avatarQuinn Tran <qutran@marvell.com>
Signed-off-by: default avatarNilesh Javali <njavali@marvell.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent a63f4c45
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -718,6 +718,7 @@ static void qla24xx_handle_gnl_done_event(scsi_qla_host_t *vha,
		ql_dbg(ql_dbg_disc, vha, 0x20e0,
		    "%s %8phC login gen changed\n",
		    __func__, fcport->port_name);
		set_bit(RELOGIN_NEEDED, &vha->dpc_flags);
		return;
	}

+6 −1
Original line number Diff line number Diff line
@@ -1029,7 +1029,12 @@ void qlt_free_session_done(struct work_struct *work)
			}
			msleep(100);
			cnt++;
			if (cnt > 200)
			/*
			 * Driver timeout is set to 22 Sec, update count value to loop
			 * long enough for log-out to complete before advancing. Otherwise,
			 * straddling logout can interfere with re-login attempt.
			 */
			if (cnt > 230)
				break;
		}