]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.9-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 2 Apr 2022 14:22:35 +0000 (16:22 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 2 Apr 2022 14:22:35 +0000 (16:22 +0200)
added patches:
scsi-qla2xxx-fix-incorrect-reporting-of-task-management-failure.patch

queue-4.9/mmc-host-return-an-error-when-enable_sdio_irq-ops-is.patch
queue-4.9/scsi-qla2xxx-fix-incorrect-reporting-of-task-management-failure.patch [new file with mode: 0644]
queue-4.9/series

index 996eaf7c451df9a3715897791e8531ff22e84554..3dc8cbfca0995d575e2d3cb6d5dac27cfa582bc9 100644 (file)
@@ -19,14 +19,12 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
 Link: https://lore.kernel.org/r/20220303165142.129745-1-ulf.hansson@linaro.org
 Signed-off-by: Sasha Levin <sashal@kernel.org>
 ---
- drivers/mmc/core/host.c | 15 +++++++++++++--
+ drivers/mmc/core/host.c |   15 +++++++++++++--
  1 file changed, 13 insertions(+), 2 deletions(-)
 
-diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c
-index 848b3453517e..60c2ca58dec3 100644
 --- a/drivers/mmc/core/host.c
 +++ b/drivers/mmc/core/host.c
-@@ -403,6 +403,16 @@ struct mmc_host *mmc_alloc_host(int extra, struct device *dev)
+@@ -403,6 +403,16 @@ again:
  
  EXPORT_SYMBOL(mmc_alloc_host);
  
@@ -55,6 +53,3 @@ index 848b3453517e..60c2ca58dec3 100644
  
        err = device_add(&host->class_dev);
        if (err)
--- 
-2.34.1
-
diff --git a/queue-4.9/scsi-qla2xxx-fix-incorrect-reporting-of-task-management-failure.patch b/queue-4.9/scsi-qla2xxx-fix-incorrect-reporting-of-task-management-failure.patch
new file mode 100644 (file)
index 0000000..47006b1
--- /dev/null
@@ -0,0 +1,37 @@
+From 58ca5999e0367d131de82a75257fbfd5aed0195d Mon Sep 17 00:00:00 2001
+From: Quinn Tran <qutran@marvell.com>
+Date: Thu, 10 Mar 2022 01:25:52 -0800
+Subject: scsi: qla2xxx: Fix incorrect reporting of task management failure
+
+From: Quinn Tran <qutran@marvell.com>
+
+commit 58ca5999e0367d131de82a75257fbfd5aed0195d upstream.
+
+User experienced no task management error while target device is responding
+with error. The RSP_CODE field in the status IOCB is in little endian.
+Driver assumes it's big endian and it picked up erroneous data.
+
+Convert the data back to big endian as is on the wire.
+
+Link: https://lore.kernel.org/r/20220310092604.22950-2-njavali@marvell.com
+Fixes: faef62d13463 ("[SCSI] qla2xxx: Fix Task Management command asynchronous handling")
+Cc: stable@vger.kernel.org
+Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
+Signed-off-by: Quinn Tran <qutran@marvell.com>
+Signed-off-by: Nilesh Javali <njavali@marvell.com>
+Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/scsi/qla2xxx/qla_isr.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/scsi/qla2xxx/qla_isr.c
++++ b/drivers/scsi/qla2xxx/qla_isr.c
+@@ -1618,6 +1618,7 @@ qla24xx_tm_iocb_entry(scsi_qla_host_t *v
+               iocb->u.tmf.data = QLA_FUNCTION_FAILED;
+       } else if ((le16_to_cpu(sts->scsi_status) &
+           SS_RESPONSE_INFO_LEN_VALID)) {
++              host_to_fcp_swap(sts->data, sizeof(sts->data));
+               if (le32_to_cpu(sts->rsp_data_len) < 4) {
+                       ql_log(ql_log_warn, fcport->vha, 0x503b,
+                           "Async-%s error - hdl=%x not enough response(%d).\n",
index c5292c05b48db631ffaf5e911825cfdf096942a9..2e3ad0c5de511a13003acdde6d70ecaa961ac242 100644 (file)
@@ -149,3 +149,4 @@ arm-mmp-fix-failure-to-remove-sram-device.patch
 video-fbdev-sm712fb-fix-crash-in-smtcfb_write.patch
 media-hdpvr-initialize-dev-worker-at-hdpvr_register_.patch
 mmc-host-return-an-error-when-enable_sdio_irq-ops-is.patch
+scsi-qla2xxx-fix-incorrect-reporting-of-task-management-failure.patch