]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 7 Jun 2026 15:02:45 +0000 (17:02 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 7 Jun 2026 15:02:45 +0000 (17:02 +0200)
added patches:
usb-core-fix-superspeed-root-hub-wmaxpacketsize.patch

queue-5.10/series
queue-5.10/usb-core-fix-superspeed-root-hub-wmaxpacketsize.patch [new file with mode: 0644]

index 118a7b988af813cd33e2da3e68928c3e8a9c1a86..5c70e50000d9ac6a2ed0e8385f05272db4e2ed1c 100644 (file)
@@ -120,3 +120,4 @@ xhci-tegra-fix-ghost-usb-device-on-dual-role-port-un.patch
 serial-dz-fix-bootconsole-handover-lockup.patch
 page_pool-fix-use-after-free-in-page_pool_recycle_in.patch
 team-move-team-device-type-change-at-the-end-of-team.patch
+usb-core-fix-superspeed-root-hub-wmaxpacketsize.patch
diff --git a/queue-5.10/usb-core-fix-superspeed-root-hub-wmaxpacketsize.patch b/queue-5.10/usb-core-fix-superspeed-root-hub-wmaxpacketsize.patch
new file mode 100644 (file)
index 0000000..6746c60
--- /dev/null
@@ -0,0 +1,40 @@
+From d1e280334b7f0a1df441e08bd1f6a1bcc36b3bbb Mon Sep 17 00:00:00 2001
+From: Michal Pecio <michal.pecio@gmail.com>
+Date: Mon, 18 May 2026 07:31:21 +0200
+Subject: usb: core: Fix SuperSpeed root hub wMaxPacketSize
+
+From: Michal Pecio <michal.pecio@gmail.com>
+
+commit d1e280334b7f0a1df441e08bd1f6a1bcc36b3bbb upstream.
+
+There is no good reason to have wBytesPerInterval < wMaxPacketSize -
+either one is too low or the other too high, and we may want to warn
+about such descriptors. Start with cleaning up our own root hubs.
+
+USB 3.2 section 10.15.1 sets wMaxPacketSize and wBytesPerInterval of
+SuperSpeed hub status endpoints at 2 bytes, so reduce wMaxPacketSize
+from its former value of 4, which was derived from USB 2.0 spec and
+the kernel's USB_MAXCHILDREN limit. They don't apply because USB 3.2
+10.15.2.1 specifies SuperSpeed hubs to have up to 15 ports.
+
+Suggested-by: Mathias Nyman <mathias.nyman@linux.intel.com>
+Signed-off-by: Michal Pecio <michal.pecio@gmail.com>
+Link: https://patch.msgid.link/20260518073121.7bc1da0f.michal.pecio@gmail.com
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/usb/core/hcd.c |    4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+--- a/drivers/usb/core/hcd.c
++++ b/drivers/usb/core/hcd.c
+@@ -353,9 +353,7 @@ static const u8 ss_rh_config_descriptor[
+       USB_DT_ENDPOINT, /* __u8 ep_bDescriptorType; Endpoint */
+       0x81,       /*  __u8  ep_bEndpointAddress; IN Endpoint 1 */
+       0x03,       /*  __u8  ep_bmAttributes; Interrupt */
+-                  /* __le16 ep_wMaxPacketSize; 1 + (MAX_ROOT_PORTS / 8)
+-                   * see hub.c:hub_configure() for details. */
+-      (USB_MAXCHILDREN + 1 + 7) / 8, 0x00,
++      0x02, 0x00, /* __le16 ep_wMaxPacketSize; 2 bytes per USB3 10.15.1 */
+       0x0c,       /*  __u8  ep_bInterval; (256ms -- usb 2.0 spec) */
+       /* one SuperSpeed endpoint companion descriptor */