FS#71660 - Arch Linux 2021.07.01 cannot detect USB 3.1 device

Attached to Project: Arch Linux
Opened by Walt Jr. Brake (philliex) - Friday, 30 July 2021, 05:44 GMT
Last edited by David Runge (dvzrv) - Saturday, 11 December 2021, 11:47 GMT
Task Type Bug Report
Category Kernel
Status Closed
Assigned To Jan Alexander Steffens (heftig)
David Runge (dvzrv)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

I create an Installer USB with Arch Linux 2021.07.01. After boot into the liveUSB system, my Portable SSD cannot be detected. I create another liveUSB with Arch Linux 2021.06.01 to test. After compare dmesg with previous liveUSB (arch version 2021.07.01), I found that new kernel can detect USB 3.0 or lower device, but cannot detect USB 3.1 device.

This issue occurred on latest kernels. I'm not sure from which version on Arch, but I can confirm it on Manjaro, is from 5.4.124, 5.10.42, 5.12.9.


Additional info:
* package version(s)

Arch-2021.06.01:
# dmesg | head -n 1
Linux version 5.12.8-arch1-1 (linux@archlinux) (gcc (GCC) 11.1.0, GNU ld (GNU Binutils) 2.36.1) #1 SMP PREEMPT Fri, 28 May 2021 15:10:20 +0000

Arch-2021.07.01:
# dmesg | head -n 1
Linux version 5.12.13-arch1-2 (linux@archlinux) (gcc (GCC) 11.1.0, GNU ld (GNU Binutils) 2.36.1) #1 SMP PREEMPT Fri, 25 Jun 2021 22:56:51 +0000


* config and/or log files etc.

On Arch-2021.06.01, no need to run 'lsusb -v', 'lsusb' can found USB 3.1 device
# lsusb
Bus 004 Device 002: ID 04e8:61f5 Samsung Electronics Co., Ltd Portable SSD T5
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

dmesg can found log about USB3.1 device (here is 'SuperSpeedPlus Gen 2'):
# dmesg
usb 4-1: new SuperSpeedPlus Gen 2 USB device number 2 using xhci_hcd
usb 4-1: Product: Portable SSD T5
usb 4-1: Manufacturer: Samsung

usb 2-4: new SuperSpeed Gen 1 USB device number 2 using xhci_hcd
usb 2-4: Product: Ultra
usb 2-4: Manufacturer: SanDisk

On Arch-2021.07.01, before run 'lsusb -v', lsusb's output:
# lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

After run the command lsusb -v, the Portable SSD can be found by command lsusb.
# lsusb
Bus 004 Device 002: ID 04e8:61f5 Samsung Electronics Co., Ltd Portable SSD T5
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

dmesg have no log about USB 3.1 device:
# dmesg
usb 2-4: new SuperSpeed Gen 1 USB device number 2 using xhci_hcd
usb 2-4: Product: Ultra
usb 2-4: Manufacturer: SanDisk

I found this problem when I upgraded Manjaro-21.0.6 (kernel 5.10.41) to Manjaro-21.0.7 (5.10.42). To confirm, I was going to install Arch and found the same problem on Arch.


* link to upstream bug report, if any

Steps to reproduce:
0. plugin USB 3.1 device
1. boot into Arch-2021.07.01 liveUSB
2. run command 'lsusb'
3. run command 'lsusb -v'
4. run command 'lsusb' again
This task depends upon

Closed by  David Runge (dvzrv)
Saturday, 11 December 2021, 11:47 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed with linux >= 5.15.3
Comment by Walt Jr. Brake (philliex) - Friday, 29 October 2021, 17:50 GMT
I think this bug was cause by the commit "usb: core: reduce power-on-good delay time of root hub" https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.76&id=972b4c19f55da91a42682c74634d36bf5ef3061c

After revert that commit and compile the kernel, my Portable SSD was detected again on system boot.

But I don't known that is correct way to fix this bug or not?
Comment by loqs (loqs) - Friday, 29 October 2021, 21:16 GMT
I would suggest using the reply to instructions from [1] to raise the issue on the linux-usb mailing list as that commit has not been reverted.

[1] https://lore.kernel.org/all/1618017645-12259-1-git-send-email-chunfeng.yun%40mediatek.com/
Comment by Walt Jr. Brake (philliex) - Saturday, 11 December 2021, 10:59 GMT
I reported the bug to linux-usb mailing list, and it was fixed.
The patch: xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay [1]

The patch was merged on kernel version:
4.4.293
4.9.291
4.14.256
4.19.218

5.4.160
5.10.80
5.14.19
5.15.3

And I verified the 5.x serials

[1] https://lore.kernel.org/all/1618017645-12259-1-git-send-email-chunfeng.yun%40mediatek.com/

Loading...