今早日常稳定版更新,更新完后出现一个设备连接一个 USB 接口只能连一次的情况.
就是第一次连接正常,拔下后再插回到这个 USB,内核可以识别到这个设备,但是不能正常工作.
以 ip6 为例,第一次连接 OK 照片也能读取.再次连接连充电都不行.
用 USB 鼠标测试也是一样,第一次正常工作再次连接就没法工作了.
$ screenfetch
██████████████████ ████████ kccat@KCCat
██████████████████ ████████ OS: Manjaro 17.0.2 Gellivara
██████████████████ ████████ Kernel: x86_64 Linux 4.9.40-1-MANJARO
██████████████████ ████████ Uptime: 6h 1m
████████ ████████ Packages: 1173
████████ ████████ ████████ Shell: bash
████████ ████████ ████████ Resolution: 1920x1080
████████ ████████ ████████ DE: GNOME
████████ ████████ ████████ WM: GNOME Shell
████████ ████████ ████████ WM Theme:
████████ ████████ ████████ GTK Theme: Adwaita [GTK2/3]
████████ ████████ ████████ Icon Theme: Moka
████████ ████████ ████████ Font: Noto Sans CJK JP 12
████████ ████████ ████████ CPU: Intel Core i7-3630QM @ 8x 3.4GHz [27.8°C]
GPU: Unknown
RAM: 2549MiB / 15941MiB
尝试过所有包重新安装,但是没有解决问题
观察 systemctl 发现重复在多个 USB 口链接 IP6,会留下多个 device 单元,不会消失.
UNIT LOAD ACTIVE SUB DESCRIPTION
sys-devices-pci0000:00-0000:00:14.0-usb3-3\x2d1-3\x2d1:4.2-net-enp0s20u1c4i2.device loaded active plugged iPhone5/5C/5S/6
sys-devices-pci0000:00-0000:00:14.0-usb3-3\x2d1.device loaded active plugged iPhone5/5C/5S/6
sys-devices-pci0000:00-0000:00:14.0-usb3-3\x2d2-3\x2d2:4.2-net-enp0s20u2c4i2.device loaded active plugged iPhone5/5C/5S/6
sys-devices-pci0000:00-0000:00:14.0-usb3-3\x2d2.device loaded active plugged iPhone5/5C/5S/6
然后尝试
systemctl daemon-reload
systemctl 中滞留的 device 单元会清空
发现 USB 又能正常工作一次
观察 lsusb 识别信息又是正常的.
$ lsusb
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 027: ID 1a81:1011 Holtek Semiconductor, Inc.
Bus 001 Device 017: ID 04ca:3006 Lite-On Technology Corp.
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 010: ID 05ac:12a8 Apple, Inc. iPhone5/5C/5S/6
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
/dev 里的描述符会在 USB 连接和拔出的时候正常出现消失,只不过计数一直在涨.
$ ls -lA /dev/bus/usb/003/
总用量 0
crw-rw-r-- 1 root root 189, 256 8 月 11 12:30 001
crw-rw-r--+ 1 usbmux root 189, 265 8 月 11 18:25 010
如果有需要其他信息请回复我,我很需要解决这个 BUG,谢谢
1
Kilerd 2017-08-11 19:14:26 +08:00 via iPhone
插一插
|
2
mlyy 2017-08-12 14:41:19 +08:00 via iPhone 1
我之前装 Manjaro 的时候遇到一模一样的问题。没解决的情况下直接换了 Arch(Manjaro 的 debug 和 Arch 还是有巨大区别的)。考虑到我并没有解决你的问题,只能给几个建议了。第一,切换下内核版本。第二,重点关注下电源管理机制(曾经捣鼓 Arch on Macbook 的时候装了电源管理相关的包,具体忘了是那个了,但是类似于 acpi 之类的,出现过类似情况,所以算一个线索吧),Manjaro 并没有详细文档解释他预装了什么,所以我最终还是弃坑用 Arch 了。
|
3
KCheshireCat OP |
4
KCheshireCat OP @mlyy #2
更换了下 4.10 和 4.11 发现除了 IPhone 以外的 USB 设备好像恢复正常了 我还注意到另一个事情了,更新前拔插 USB 会有音效的,现在没有了,应该是除了内核还有什么包不正常. |
5
mlyy 2017-08-12 22:24:37 +08:00 via iPhone
@KCheshireCat 如果有的话,卸载下 acpid 和 tlp 这两个包。这两个包是最近这段时间我想象的出跟电源管理有直接关系的包。
|
6
KCheshireCat OP |