USB 3.2 Gen2 hubs are experiencing enumeration instability and failures when connected to USB4 (40 Gbps) ports on Linux, while working fine on USB-C 10 Gbps ports and Windows. This suggests an interoperability issue between USB4 and USB 3.x on Linux that needs to be addressed.
I’m reporting a reproducible issue involving a USB-C hub and a USB4 (40 Gbps) port on CachyOS (maybe other Linux Distros affected)? Summary \- Same machine, same hub, same cable \- USB-C 10 Gbps port → works \- USB-C 40 Gbps (USB4 / Thunderbolt) port →fails on Linux \- Linux kernel: 6.18.12-2-cachyos-lts \- Hub: UGREEN USB-C hub, USB 3.2 Gen2 (10 Gbps) \- Hub has external power \- Motherboard is MSI x870e Tomahawk WiFi on latest Bios Observed behavior on CachyOS: When the hub is connected to the USB-C 40 Gbps port, enumeration starts but becomes unstable and fails. Relevant dmesg excerpts: ACPI: USB4 \_OSC: OS supports USB3+ DisplayPort+ PCIe+ XDomain+ ACPI: USB4 \_OSC: OS controls USB3+ DisplayPort+ PCIe+ XDomain+ usb 6-1: new SuperSpeed Plus Gen 2x1 USB device usb 6-1.4: new SuperSpeed Plus Gen 2x1 USB device xhci\_hcd 0000:77:00.0: bad transfer trb length 4 in event trb xhci\_hcd 0000:77:00.0: bad transfer trb length 4 in event trb usb 5-1.4.4: reset high-speed USB device After this point, the hub either resets repeatedly or disappears. Behavior on Windows 11 On the same USB-C 40 Gbps port, the hub works normally under Windows 11. No instability or disconnects observed. Control test: On Linux, the same hub works reliably when connected to the USB-C 10 Gbps port. This suggests: \- the hub itself is functional \- the cable and power are not the issue \- the problem is specific to the USB4 / 40 Gbps port path on Linux Notes (hypotheses, not confirmed) \- The hub is USB 3.2-only and not advertised as USB4-capable \- The failure may be related to USB4 ↔ USB 3.x interoperability or xHCI behavior on Linux \- The recurring xHCI error “bad transfer trb length” appears relevant Question Is this a known issue with: \- USB4 ports handling USB 3.2-only hubs on Linux? \- xHCI behavior in USB4 scenarios? \- recent kernel versions (6.18)? Any pointers to existing bug reports, patches, or kernel versions known to behave better would be appreciated.