From: Greg Kroah-Hartman Date: Tue, 7 Aug 2018 13:11:40 +0000 (+0200) Subject: 3.18-stable patches X-Git-Tag: v4.17.14~20 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e0ccf48feee47f2bd66a7a51afaf257daff640ef;p=thirdparty%2Fkernel%2Fstable-queue.git 3.18-stable patches added patches: scsi-qla2xxx-fix-isp-recovery-on-unload.patch scsi-qla2xxx-return-error-when-tmf-returns.patch --- diff --git a/queue-3.18/scsi-qla2xxx-fix-isp-recovery-on-unload.patch b/queue-3.18/scsi-qla2xxx-fix-isp-recovery-on-unload.patch new file mode 100644 index 00000000000..ed7e07a29c1 --- /dev/null +++ b/queue-3.18/scsi-qla2xxx-fix-isp-recovery-on-unload.patch @@ -0,0 +1,38 @@ +From b08abbd9f5996309f021684f9ca74da30dcca36a Mon Sep 17 00:00:00 2001 +From: Quinn Tran +Date: Wed, 18 Jul 2018 14:29:54 -0700 +Subject: scsi: qla2xxx: Fix ISP recovery on unload + +From: Quinn Tran + +commit b08abbd9f5996309f021684f9ca74da30dcca36a upstream. + +During unload process, the chip can encounter problem where a FW dump would +be captured. For this case, the full reset sequence will be skip to bring +the chip back to full operational state. + +Fixes: e315cd28b9ef ("[SCSI] qla2xxx: Code changes for qla data structure refactoring") +Cc: +Signed-off-by: Quinn Tran +Signed-off-by: Himanshu Madhani +Signed-off-by: Martin K. Petersen +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/scsi/qla2xxx/qla_os.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +--- a/drivers/scsi/qla2xxx/qla_os.c ++++ b/drivers/scsi/qla2xxx/qla_os.c +@@ -5000,8 +5000,9 @@ qla2x00_do_dpc(void *data) + } + } + +- if (test_and_clear_bit(ISP_ABORT_NEEDED, +- &base_vha->dpc_flags)) { ++ if (test_and_clear_bit ++ (ISP_ABORT_NEEDED, &base_vha->dpc_flags) && ++ !test_bit(UNLOADING, &base_vha->dpc_flags)) { + + ql_dbg(ql_dbg_dpc, base_vha, 0x4007, + "ISP abort scheduled.\n"); diff --git a/queue-3.18/scsi-qla2xxx-return-error-when-tmf-returns.patch b/queue-3.18/scsi-qla2xxx-return-error-when-tmf-returns.patch new file mode 100644 index 00000000000..280a60e1951 --- /dev/null +++ b/queue-3.18/scsi-qla2xxx-return-error-when-tmf-returns.patch @@ -0,0 +1,40 @@ +From b4146c4929ef61d5afca011474d59d0918a0cd82 Mon Sep 17 00:00:00 2001 +From: Anil Gurumurthy +Date: Wed, 18 Jul 2018 14:29:55 -0700 +Subject: scsi: qla2xxx: Return error when TMF returns + +From: Anil Gurumurthy + +commit b4146c4929ef61d5afca011474d59d0918a0cd82 upstream. + +Propagate the task management completion status properly to avoid +unnecessary waits for commands to complete. + +Fixes: faef62d13463 ("[SCSI] qla2xxx: Fix Task Management command asynchronous handling") +Cc: +Signed-off-by: Anil Gurumurthy +Signed-off-by: Himanshu Madhani +Signed-off-by: Martin K. Petersen +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/scsi/qla2xxx/qla_init.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +--- a/drivers/scsi/qla2xxx/qla_init.c ++++ b/drivers/scsi/qla2xxx/qla_init.c +@@ -325,11 +325,10 @@ qla2x00_async_tm_cmd(fc_port_t *fcport, + + wait_for_completion(&tm_iocb->u.tmf.comp); + +- rval = tm_iocb->u.tmf.comp_status == CS_COMPLETE ? +- QLA_SUCCESS : QLA_FUNCTION_FAILED; ++ rval = tm_iocb->u.tmf.data; + +- if ((rval != QLA_SUCCESS) || tm_iocb->u.tmf.data) { +- ql_dbg(ql_dbg_taskm, vha, 0x8030, ++ if (rval != QLA_SUCCESS) { ++ ql_log(ql_log_warn, vha, 0x8030, + "TM IOCB failed (%x).\n", rval); + } + diff --git a/queue-3.18/series b/queue-3.18/series index bd4a26b4aa3..d84200e9116 100644 --- a/queue-3.18/series +++ b/queue-3.18/series @@ -79,3 +79,5 @@ can-ems_usb-fix-memory-leak-on-ems_usb_disconnect.patch virtio_balloon-fix-another-race-between-migration-and-ballooning.patch crypto-padlock-aes-fix-nano-workaround-data-corruption.patch scsi-sg-fix-minor-memory-leak-in-error-path.patch +scsi-qla2xxx-fix-isp-recovery-on-unload.patch +scsi-qla2xxx-return-error-when-tmf-returns.patch