我在新安装的 18.04.4 LTS 上遇到了启动缓慢的问题。启动缓慢似乎是由于 USB 内核基础结构在尝试初始化时超时造成的。
我拔掉了所有外部 USB 设备,试图找出罪魁祸首,但毫无进展。唯一剩下的就是内部 flirc 模块,它也连接到 USB 总线,所以这种情况不太可能发生,因为它之前在 Xenial 上是可以正常工作的……
不幸的是,我不知道如何正确解释 dmesg 输出。有人能告诉我到底是哪个设备导致了问题吗?例如,哇,我应该读这行吗usb 3-11: device descriptor read/64, error -110
?
$ dmesg
[...]
[ 18.840539] usb 3-11: device descriptor read/64, error -110
[ 34.456541] usb 3-11: device descriptor read/64, error -110
[ 34.720461] usb 3-11: new full-speed USB device number 4 using xhci_hcd
[ 50.328537] usb 3-11: device descriptor read/64, error -110
[ 65.944535] usb 3-11: device descriptor read/64, error -110
[ 66.080494] usb usb3-port11: attempt power cycle
[ 66.760460] usb 3-11: new full-speed USB device number 5 using xhci_hcd
[ 71.960551] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 72.196598] usb 3-11: Device not responding to setup address.
[ 72.432460] usb 3-11: device not accepting address 5, error -71
[ 72.588460] usb 3-11: new full-speed USB device number 6 using xhci_hcd
[ 77.848555] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 78.084597] usb 3-11: Device not responding to setup address.
[ 78.320457] usb 3-11: device not accepting address 6, error -71
[ 78.350687] usb usb3-port11: unable to enumerate USB device
[ 78.383974] hidraw: raw HID events driver (C) Jiri Kosina
[ 78.423149] usbcore: registered new interface driver usbhid
[ 78.453215] usbhid: USB HID core driver
[ 78.484704] input: flirc.tv flirc Keyboard as /devices/pci0000:00/0000:00:14.0/usb3/3-6/3-6:1.0/0003:20A0:0001.0001/input/input3
[ 78.572642] input: flirc.tv flirc Consumer Control as /devices/pci0000:00/0000:00:14.0/usb3/3-6/3-6:1.0/0003:20A0:0001.0001/input/input4
[ 78.604675] input: flirc.tv flirc System Control as /devices/pci0000:00/0000:00:14.0/usb3/3-6/3-6:1.0/0003:20A0:0001.0001/input/input5
[ 78.636707] hid-generic 0003:20A0:0001.0001: input,hidraw0: USB HID v1.01 Keyboard [flirc.tv flirc] on usb-0000:00:14.0-6/input0
[...]
$ hwinfo
36: USB 00.1: 0000 Unclassified device
[Created at usb.122]
Unique ID: zGic.dZ7C1EsCH66
Parent ID: uIhY.2DFUsyrieMD
SysFS ID: /devices/pci0000:00/0000:00:14.0/usb3/3-6/3-6:1.1
SysFS BusID: 3-6:1.1
Hardware Class: unknown
Model: "Clay Logic flirc"
Hotplug: USB
Vendor: usb 0x20a0 "Clay Logic"
Device: usb 0x0001 "flirc"
Revision: "1.00"
Speed: 1.5 Mbps
Module Alias: "usb:v20A0p0001d0100dc00dsc00dp00icFFiscFFipFFin01"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #35 (Hub)
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8009 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 8087:8001 Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 20a0:0001 Clay Logic
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
编辑 打开我的 HTPC 机箱并拔下 flirc 模块后,它启动正常且快速,没有任何内核错误。所以这个 USB 设备是导致问题的根源。但是我仍然不明白为什么这个问题突然出现,而 Xenial 从来没有出现过这个问题。如果有人能解释一下,我仍然会很高兴。
答案1
根据描述这里,USB 错误使用我们习惯的相同的旧常规 errno 值,其中 110 表示超时(ETIMEDOUT)
答案2
这应该有帮助:https://askubuntu.com/a/1239249/326048
该人给出的答案是关于诊断与 USB 硬件相关的内核问题的教育性答案。