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

scsi: qla2xxx: Fix Rport and session state getting out of sync



This patch fixes rport state and session state getting out of sync.

Signed-off-by: default avatarQuinn Tran <quinn.tran@cavium.com>
Signed-off-by: default avatarHimanshu Madhani <himanshu.madhani@cavium.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 625a1cae
Loading
Loading
Loading
Loading
+12 −18
Original line number Diff line number Diff line
@@ -601,8 +601,6 @@ void qla2x00_async_nack_sp_done(void *s, int res)

			vha->fcport_count++;

			if (!IS_IIDMA_CAPABLE(vha->hw) ||
			    !vha->hw->flags.gpsc_supported) {
			ql_dbg(ql_dbg_disc, vha, 0x20f3,
			    "%s %d %8phC post upd_fcport fcp_cnt %d\n",
			    __func__, __LINE__,
@@ -611,14 +609,10 @@ void qla2x00_async_nack_sp_done(void *s, int res)
			sp->fcport->disc_state = DSC_UPD_FCPORT;
			qla24xx_post_upd_fcport_work(vha, sp->fcport);
		} else {
				ql_dbg(ql_dbg_disc, vha, 0x20f5,
				    "%s %d %8phC post gpsc fcp_cnt %d\n",
				    __func__, __LINE__,
				    sp->fcport->port_name,
				    vha->fcport_count);

				qla24xx_post_gpsc_work(vha, sp->fcport);
			}
			sp->fcport->login_retry = 0;
			sp->fcport->disc_state = DSC_LOGIN_COMPLETE;
			sp->fcport->deleted = 0;
			sp->fcport->logout_on_delete = 1;
		}
		break;