On Mon, Aug 11, 2025 at 01:06:03PM +0200, Jiri Slaby wrote:
On 11. 08. 25, 8:16, Jiri Slaby wrote:
@@ -5850,8 +5851,11 @@ static void port_event(struct usb_hub *hub, int port1) } else if (!udev || !(portstatus & USB_PORT_STAT_CONNECTION) || udev->state == USB_STATE_NOTATTACHED) { dev_dbg(&port_dev->dev, "do warm reset, port only\n"); - if (hub_port_reset(hub, port1, NULL, - HUB_BH_RESET_TIME, true) < 0) + err = hub_port_reset(hub, port1, NULL, + HUB_BH_RESET_TIME, true); + if (!udev && err == -ENOTCONN) + connect_change = 0; + else if (err < 0) hub_port_disable(hub, port1, 1);
FTR this is now tracked downstream as: https://bugzilla.suse.com/show_bug.cgi?id=1247895
This was reported to break the USB on one box:
[Wed Aug 6 16:51:33 2025] [ T355745] usb 1-2: reset full-speed USB device number 12 using xhci_hcd [Wed Aug 6 16:51:34 2025] [ T355745] usb 1-2: device descriptor read/64, error -71 [Wed Aug 6 16:51:34 2025] [ T355745] usb 1-2: device descriptor read/64, error -71
What shows up in the kernel log (with usbcore dynamic debugging enabled) if the commit is present and if the commit is reverted?
Alan Stern