Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 667bdc46 authored by Quinn Tran's avatar Quinn Tran Committed by Greg Kroah-Hartman
Browse files

scsi: qla2xxx: Fix iIDMA error



[ Upstream commit 8d9bf0a9a268f7ca0b811d6e6a1fc783afa5c746 ]

When switch responds with error for Get Port Speed Command (GPSC), driver
should not proceed with telling FW about the speed of the remote port.

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>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent ca35c5a1
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3277,7 +3277,7 @@ static void qla24xx_async_gpsc_sp_done(void *s, int res)
			ql_dbg(ql_dbg_disc, vha, 0x2019,
			    "GPSC command unsupported, disabling query.\n");
			ha->flags.gpsc_supported = 0;
			res = QLA_SUCCESS;
			goto done;
		}
	} else {
		switch (be16_to_cpu(ct_rsp->rsp.gpsc.speed)) {
@@ -3310,7 +3310,6 @@ static void qla24xx_async_gpsc_sp_done(void *s, int res)
		    be16_to_cpu(ct_rsp->rsp.gpsc.speeds),
		    be16_to_cpu(ct_rsp->rsp.gpsc.speed));
	}
done:
	memset(&ea, 0, sizeof(ea));
	ea.event = FCME_GPSC_DONE;
	ea.rc = res;
@@ -3318,6 +3317,7 @@ static void qla24xx_async_gpsc_sp_done(void *s, int res)
	ea.sp = sp;
	qla2x00_fcport_event_handler(vha, &ea);

done:
	sp->free(sp);
}