]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop scsi patch from 5.4 and 5.10
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Sep 2023 18:35:51 +0000 (20:35 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Sep 2023 18:35:51 +0000 (20:35 +0200)
queue-5.10/scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch [deleted file]
queue-5.10/series
queue-5.4/scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch [deleted file]
queue-5.4/series

diff --git a/queue-5.10/scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch b/queue-5.10/scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch
deleted file mode 100644 (file)
index 09c1f50..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-From 6d0b65569c0a10b27c49bacd8d25bcd406003533 Mon Sep 17 00:00:00 2001
-From: Quinn Tran <qutran@marvell.com>
-Date: Mon, 21 Aug 2023 18:30:38 +0530
-Subject: scsi: qla2xxx: Flush mailbox commands on chip reset
-
-From: Quinn Tran <qutran@marvell.com>
-
-commit 6d0b65569c0a10b27c49bacd8d25bcd406003533 upstream.
-
-Fix race condition between Interrupt thread and Chip reset thread in trying
-to flush the same mailbox. With the race condition, the "ha->mbx_intr_comp"
-will get an extra complete() call. The extra complete call create erroneous
-mailbox timeout condition when the next mailbox is sent where the mailbox
-call does not wait for interrupt to arrive. Instead, it advances without
-waiting.
-
-Add lock protection around the check for mailbox completion.
-
-Cc: stable@vger.kernel.org
-Fixes: b2000805a975 ("scsi: qla2xxx: Flush mailbox commands on chip reset")
-Signed-off-by: Quinn Tran <quinn.tran@marvell.com>
-Signed-off-by: Nilesh Javali <njavali@marvell.com>
-Link: https://lore.kernel.org/r/20230821130045.34850-3-njavali@marvell.com
-Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
-Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/scsi/qla2xxx/qla_def.h  |    1 -
- drivers/scsi/qla2xxx/qla_init.c |    7 ++++---
- drivers/scsi/qla2xxx/qla_mbx.c  |    4 ----
- drivers/scsi/qla2xxx/qla_os.c   |    1 -
- 4 files changed, 4 insertions(+), 9 deletions(-)
-
---- a/drivers/scsi/qla2xxx/qla_def.h
-+++ b/drivers/scsi/qla2xxx/qla_def.h
-@@ -4192,7 +4192,6 @@ struct qla_hw_data {
-       uint8_t         aen_mbx_count;
-       atomic_t        num_pend_mbx_stage1;
-       atomic_t        num_pend_mbx_stage2;
--      atomic_t        num_pend_mbx_stage3;
-       uint16_t        frame_payload_size;
-       uint32_t        login_retry_count;
---- a/drivers/scsi/qla2xxx/qla_init.c
-+++ b/drivers/scsi/qla2xxx/qla_init.c
-@@ -6926,14 +6926,15 @@ qla2x00_abort_isp_cleanup(scsi_qla_host_
-       }
-       /* purge MBox commands */
--      if (atomic_read(&ha->num_pend_mbx_stage3)) {
-+      spin_lock_irqsave(&ha->hardware_lock, flags);
-+      if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags)) {
-               clear_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags);
-               complete(&ha->mbx_intr_comp);
-       }
-+      spin_unlock_irqrestore(&ha->hardware_lock, flags);
-       i = 0;
--      while (atomic_read(&ha->num_pend_mbx_stage3) ||
--          atomic_read(&ha->num_pend_mbx_stage2) ||
-+      while (atomic_read(&ha->num_pend_mbx_stage2) ||
-           atomic_read(&ha->num_pend_mbx_stage1)) {
-               msleep(20);
-               i++;
---- a/drivers/scsi/qla2xxx/qla_mbx.c
-+++ b/drivers/scsi/qla2xxx/qla_mbx.c
-@@ -268,7 +268,6 @@ qla2x00_mailbox_command(scsi_qla_host_t
-               spin_unlock_irqrestore(&ha->hardware_lock, flags);
-               wait_time = jiffies;
--              atomic_inc(&ha->num_pend_mbx_stage3);
-               if (!wait_for_completion_timeout(&ha->mbx_intr_comp,
-                   mcp->tov * HZ)) {
-                       ql_dbg(ql_dbg_mbx, vha, 0x117a,
-@@ -283,7 +282,6 @@ qla2x00_mailbox_command(scsi_qla_host_t
-                               spin_unlock_irqrestore(&ha->hardware_lock,
-                                   flags);
-                               atomic_dec(&ha->num_pend_mbx_stage2);
--                              atomic_dec(&ha->num_pend_mbx_stage3);
-                               rval = QLA_ABORTED;
-                               goto premature_exit;
-                       }
-@@ -293,11 +291,9 @@ qla2x00_mailbox_command(scsi_qla_host_t
-                       ha->flags.mbox_busy = 0;
-                       spin_unlock_irqrestore(&ha->hardware_lock, flags);
-                       atomic_dec(&ha->num_pend_mbx_stage2);
--                      atomic_dec(&ha->num_pend_mbx_stage3);
-                       rval = QLA_ABORTED;
-                       goto premature_exit;
-               }
--              atomic_dec(&ha->num_pend_mbx_stage3);
-               if (time_after(jiffies, wait_time + 5 * HZ))
-                       ql_log(ql_log_warn, vha, 0x1015, "cmd=0x%x, waited %d msecs\n",
---- a/drivers/scsi/qla2xxx/qla_os.c
-+++ b/drivers/scsi/qla2xxx/qla_os.c
-@@ -2866,7 +2866,6 @@ qla2x00_probe_one(struct pci_dev *pdev,
-       ha->max_exchg = FW_MAX_EXCHANGES_CNT;
-       atomic_set(&ha->num_pend_mbx_stage1, 0);
-       atomic_set(&ha->num_pend_mbx_stage2, 0);
--      atomic_set(&ha->num_pend_mbx_stage3, 0);
-       atomic_set(&ha->zio_threshold, DEFAULT_ZIO_THRESHOLD);
-       ha->last_zio_threshold = DEFAULT_ZIO_THRESHOLD;
index 92f2e0dc6776c3e492ce7c60b0005dbcd5dfaf8a..87c108a87d6f392ab9f5e0d95caf7b3470772695 100644 (file)
@@ -319,4 +319,3 @@ scsi-qla2xxx-fix-inconsistent-tmf-timeout.patch
 scsi-qla2xxx-fix-erroneous-link-up-failure.patch
 scsi-qla2xxx-turn-off-noisy-message-log.patch
 scsi-qla2xxx-remove-unsupported-ql2xenabledif-option.patch
-scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch
diff --git a/queue-5.4/scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch b/queue-5.4/scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch
deleted file mode 100644 (file)
index 0945838..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-From 6d0b65569c0a10b27c49bacd8d25bcd406003533 Mon Sep 17 00:00:00 2001
-From: Quinn Tran <qutran@marvell.com>
-Date: Mon, 21 Aug 2023 18:30:38 +0530
-Subject: scsi: qla2xxx: Flush mailbox commands on chip reset
-
-From: Quinn Tran <qutran@marvell.com>
-
-commit 6d0b65569c0a10b27c49bacd8d25bcd406003533 upstream.
-
-Fix race condition between Interrupt thread and Chip reset thread in trying
-to flush the same mailbox. With the race condition, the "ha->mbx_intr_comp"
-will get an extra complete() call. The extra complete call create erroneous
-mailbox timeout condition when the next mailbox is sent where the mailbox
-call does not wait for interrupt to arrive. Instead, it advances without
-waiting.
-
-Add lock protection around the check for mailbox completion.
-
-Cc: stable@vger.kernel.org
-Fixes: b2000805a975 ("scsi: qla2xxx: Flush mailbox commands on chip reset")
-Signed-off-by: Quinn Tran <quinn.tran@marvell.com>
-Signed-off-by: Nilesh Javali <njavali@marvell.com>
-Link: https://lore.kernel.org/r/20230821130045.34850-3-njavali@marvell.com
-Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
-Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/scsi/qla2xxx/qla_def.h  |    1 -
- drivers/scsi/qla2xxx/qla_init.c |    7 ++++---
- drivers/scsi/qla2xxx/qla_mbx.c  |    4 ----
- drivers/scsi/qla2xxx/qla_os.c   |    1 -
- 4 files changed, 4 insertions(+), 9 deletions(-)
-
---- a/drivers/scsi/qla2xxx/qla_def.h
-+++ b/drivers/scsi/qla2xxx/qla_def.h
-@@ -3952,7 +3952,6 @@ struct qla_hw_data {
-       uint8_t         aen_mbx_count;
-       atomic_t        num_pend_mbx_stage1;
-       atomic_t        num_pend_mbx_stage2;
--      atomic_t        num_pend_mbx_stage3;
-       uint16_t        frame_payload_size;
-       uint32_t        login_retry_count;
---- a/drivers/scsi/qla2xxx/qla_init.c
-+++ b/drivers/scsi/qla2xxx/qla_init.c
-@@ -6740,14 +6740,15 @@ qla2x00_abort_isp_cleanup(scsi_qla_host_
-       }
-       /* purge MBox commands */
--      if (atomic_read(&ha->num_pend_mbx_stage3)) {
-+      spin_lock_irqsave(&ha->hardware_lock, flags);
-+      if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags)) {
-               clear_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags);
-               complete(&ha->mbx_intr_comp);
-       }
-+      spin_unlock_irqrestore(&ha->hardware_lock, flags);
-       i = 0;
--      while (atomic_read(&ha->num_pend_mbx_stage3) ||
--          atomic_read(&ha->num_pend_mbx_stage2) ||
-+      while (atomic_read(&ha->num_pend_mbx_stage2) ||
-           atomic_read(&ha->num_pend_mbx_stage1)) {
-               msleep(20);
-               i++;
---- a/drivers/scsi/qla2xxx/qla_mbx.c
-+++ b/drivers/scsi/qla2xxx/qla_mbx.c
-@@ -268,7 +268,6 @@ qla2x00_mailbox_command(scsi_qla_host_t
-               spin_unlock_irqrestore(&ha->hardware_lock, flags);
-               wait_time = jiffies;
--              atomic_inc(&ha->num_pend_mbx_stage3);
-               if (!wait_for_completion_timeout(&ha->mbx_intr_comp,
-                   mcp->tov * HZ)) {
-                       ql_dbg(ql_dbg_mbx, vha, 0x117a,
-@@ -283,7 +282,6 @@ qla2x00_mailbox_command(scsi_qla_host_t
-                               spin_unlock_irqrestore(&ha->hardware_lock,
-                                   flags);
-                               atomic_dec(&ha->num_pend_mbx_stage2);
--                              atomic_dec(&ha->num_pend_mbx_stage3);
-                               rval = QLA_ABORTED;
-                               goto premature_exit;
-                       }
-@@ -293,11 +291,9 @@ qla2x00_mailbox_command(scsi_qla_host_t
-                       ha->flags.mbox_busy = 0;
-                       spin_unlock_irqrestore(&ha->hardware_lock, flags);
-                       atomic_dec(&ha->num_pend_mbx_stage2);
--                      atomic_dec(&ha->num_pend_mbx_stage3);
-                       rval = QLA_ABORTED;
-                       goto premature_exit;
-               }
--              atomic_dec(&ha->num_pend_mbx_stage3);
-               if (time_after(jiffies, wait_time + 5 * HZ))
-                       ql_log(ql_log_warn, vha, 0x1015, "cmd=0x%x, waited %d msecs\n",
---- a/drivers/scsi/qla2xxx/qla_os.c
-+++ b/drivers/scsi/qla2xxx/qla_os.c
-@@ -2837,7 +2837,6 @@ qla2x00_probe_one(struct pci_dev *pdev,
-       ha->max_exchg = FW_MAX_EXCHANGES_CNT;
-       atomic_set(&ha->num_pend_mbx_stage1, 0);
-       atomic_set(&ha->num_pend_mbx_stage2, 0);
--      atomic_set(&ha->num_pend_mbx_stage3, 0);
-       atomic_set(&ha->zio_threshold, DEFAULT_ZIO_THRESHOLD);
-       ha->last_zio_threshold = DEFAULT_ZIO_THRESHOLD;
index 5db2a4c5383de42af4dad6c1fcded1002a94f214..6fe864d960ea1bb14a0c7e8284892b8dbfbedd03 100644 (file)
@@ -242,4 +242,3 @@ scsi-qla2xxx-fix-inconsistent-tmf-timeout.patch
 scsi-qla2xxx-fix-erroneous-link-up-failure.patch
 scsi-qla2xxx-turn-off-noisy-message-log.patch
 scsi-qla2xxx-remove-unsupported-ql2xenabledif-option.patch
-scsi-qla2xxx-flush-mailbox-commands-on-chip-reset.patch