]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.6-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 15 Jul 2024 06:57:02 +0000 (08:57 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 15 Jul 2024 06:57:02 +0000 (08:57 +0200)
added patches:
revert-usb-xhci-prevent-potential-failure-in-handle_tx_event-for-transfer-events-without-trb.patch
series

queue-6.6/revert-usb-xhci-prevent-potential-failure-in-handle_tx_event-for-transfer-events-without-trb.patch [new file with mode: 0644]
queue-6.6/series [new file with mode: 0644]

diff --git a/queue-6.6/revert-usb-xhci-prevent-potential-failure-in-handle_tx_event-for-transfer-events-without-trb.patch b/queue-6.6/revert-usb-xhci-prevent-potential-failure-in-handle_tx_event-for-transfer-events-without-trb.patch
new file mode 100644 (file)
index 0000000..94ce57f
--- /dev/null
@@ -0,0 +1,50 @@
+From 7008cd886178ff347ddbc3f962303a0655956eec Mon Sep 17 00:00:00 2001
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Date: Mon, 15 Jul 2024 08:49:12 +0200
+Subject: Revert "usb: xhci: prevent potential failure in handle_tx_event() for Transfer events without TRB"
+
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+This reverts commit 9a24eb8010c2dc6a2eba56e3eb9fc07d14ffe00a which is
+commit 66cb618bf0bb82859875b00eeffaf223557cb416 upstream.
+
+In backporting it to stable kernels, it causes a severe regression on
+many systems, so revert it for now.
+
+Reported-by: Tim Lewis <elatllat@gmail.com>
+Link: https://lore.kernel.org/r/CA+3zgmvct7BWib9A7O1ykUf=0nZpdbdpXBdPWOCqfPuyCT3fug@mail.gmail.com
+Reported-by: <matthias@bodenbinder.de>
+Link: https://lore.kernel.org/r/bug-219039-208809@https.bugzilla.kernel.org/
+Cc: Niklas Neronin <niklas.neronin@linux.intel.com>
+Cc: Mathias Nyman <mathias.nyman@linux.intel.com>
+Cc: MichaƂ Pecio <michal.pecio@gmail.com>
+Cc: <ZeroBeat@gmx.de>
+Cc: Salvatore Bonaccorso <carnil@debian.org>
+Cc: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/usb/host/xhci-ring.c |    5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+--- a/drivers/usb/host/xhci-ring.c
++++ b/drivers/usb/host/xhci-ring.c
+@@ -2649,17 +2649,16 @@ static int handle_tx_event(struct xhci_h
+                       else
+                               xhci_handle_halted_endpoint(xhci, ep, NULL,
+                                                           EP_SOFT_RESET);
+-                      break;
++                      goto cleanup;
+               case COMP_RING_UNDERRUN:
+               case COMP_RING_OVERRUN:
+               case COMP_STOPPED_LENGTH_INVALID:
+-                      break;
++                      goto cleanup;
+               default:
+                       xhci_err(xhci, "ERROR Transfer event for unknown stream ring slot %u ep %u\n",
+                                slot_id, ep_index);
+                       goto err_out;
+               }
+-              return 0;
+       }
+       /* Count current td numbers if ep->skip is set */
diff --git a/queue-6.6/series b/queue-6.6/series
new file mode 100644 (file)
index 0000000..7185682
--- /dev/null
@@ -0,0 +1 @@
+revert-usb-xhci-prevent-potential-failure-in-handle_tx_event-for-transfer-events-without-trb.patch