USB 以太网 + 雷电错误

USB 以太网 + 雷电错误

目前,雷电以太网适配器存在严重问题。

该设备是一款“Razer Core X”雷电 eGPU 外壳,内置 USB3 集线器和千兆以太网端口。本质上是一款功能非常强大的底座,配有自己的 GPU(利用雷电端口上的 4 条 PCIe 通道)。

如果我使用内置以太网端口或将自己的 USB3 以太网适配器插入底座上的 USB3 集线器,也会出现同样的问题。如果我绕过 Thunderbolt 底座并直接插入以太网适配器,则不会出现此问题(尽管这有点违背底座的用途)。

同样的问题也发生在使用此底座的不同笔记本电脑上。我的工作笔记本电脑使用的是 18.04,我的新个人笔记本电脑使用的是 20.04,两台笔记本电脑上的两个版本的 Ubuntu 都有完全相同的行为。

当以太网出现故障时,它不再能够解析 DNS,我甚至无法在本地网络上 ping 任何内容,但设备在 NetworkManager UI 中仍然显示为“已连接”。当我关闭/打开连接时,它会显示“正在连接”并永久停留在那里。

当我检查 dmesg/syslog 时,每次都会看到完全相同的错误。下面是错误的示例。您可以在日志中看到我通过 modprobe 重新加载驱动程序,这导致连接短暂地再次工作。然后片刻之后又出现了完全相同的错误和症状:

[SAME ERROR REPEATED ~20 times]
[  543.814402] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000425e6e3f0 trb-start 0000000425e6e2e0 trb-end 0000000425e6e2e0 seg-start 0000000425e6e000 seg-end 0000000425e6eff0
[  543.815185] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  543.815186] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000425e6e400 trb-start 0000000425e6e2e0 trb-end 0000000425e6e2e0 seg-start 0000000425e6e000 seg-end 0000000425e6eff0
[  543.815271] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  543.815272] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000425e6e410 trb-start 0000000425e6e2e0 trb-end 0000000425e6e2e0 seg-start 0000000425e6e000 seg-end 0000000425e6eff0
[  543.815356] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  543.815357] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000425e6e420 trb-start 0000000425e6e2e0 trb-end 0000000425e6e2e0 seg-start 0000000425e6e000 seg-end 0000000425e6eff0
[  543.815822] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  543.815823] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000425e6e430 trb-start 0000000425e6e2e0 trb-end 0000000425e6e2e0 seg-start 0000000425e6e000 seg-end 0000000425e6eff0
[  609.127969] usbcore: deregistering interface driver ax88179_178a
[  609.128443] ax88179_178a 10-1:1.0 enx90203a1c2b65: unregister 'ax88179_178a' usb-0000:0c:00.0-1, ASIX AX88179 USB 3.0 Gigabit Ethernet
[  609.643604] ax88179_178a 10-1:1.0 eth0: register 'ax88179_178a' at usb-0000:0c:00.0-1, ASIX AX88179 USB 3.0 Gigabit Ethernet, 90:20:3a:1c:2b:65
[  609.645089] usbcore: registered new interface driver ax88179_178a
[  609.646672] ax88179_178a 10-1:1.0 enx90203a1c2b65: renamed from eth0
[  612.705215] ax88179_178a 10-1:1.0 enx90203a1c2b65: ax88179 - Link status is: 1
[  612.735735] IPv6: ADDRCONF(NETDEV_CHANGE): enx90203a1c2b65: link becomes ready
[  652.991795] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  652.991799] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000384cb4280 trb-start 0000000384cb4260 trb-end 0000000384cb4260 seg-start 0000000384cb4000 seg-end 0000000384cb4ff0
[  652.991859] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  652.991862] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000384cb4290 trb-start 0000000384cb4260 trb-end 0000000384cb4260 seg-start 0000000384cb4000 seg-end 0000000384cb4ff0
[  652.991944] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  652.991945] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000384cb42a0 trb-start 0000000384cb4260 trb-end 0000000384cb4260 seg-start 0000000384cb4000 seg-end 0000000384cb4ff0
[  652.992030] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  652.992032] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000384cb42b0 trb-start 0000000384cb4260 trb-end 0000000384cb4260 seg-start 0000000384cb4000 seg-end 0000000384cb4ff0
[  652.992121] xhci_hcd 0000:0c:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[  652.992122] xhci_hcd 0000:0c:00.0: Looking for event-dma 0000000384cb42c0 trb-start 0000000384cb4260 trb-end 0000000384cb4260 seg-start 0000000384cb4000 seg-end 0000000384cb4ff0
[SAME ERROR REPEATED ~20 times]

每次我注意到症状后检查日志时,都会看到“传输事件”错误,并且系统日志中的时间戳似乎与网络停止工作的时刻完全对应。从这次运行中可以看出,在加载驱动程序和遇到问题之间没有其他日志输出。

当我在谷歌上搜索该错误消息时,有多个文章讨论了 Thunderbolt 带宽管理问题,但我能找到的每一篇帖子都是几年前的,只是说它现在已在内核中修复。但它似乎并没有为我修复(5.3.0-51-generic)。当我执行需要更多网络带宽的操作(例如流式传输电影)时,错误确实会更快地发生,因此这似乎确实指向 Thunderbolt 带宽问题,但我再次找不到修复方法/据说这一切都在几年前就修复了。

此处链接的是网络诊断脚本的输出:https://paste.ubuntu.com/p/FmG8hGzkXV/

我尝试禁用以太网设备和设备所连接的 USB 总线的自动挂起功能(使用 powertop),但无济于事。我的笔记本电脑似乎没有安装 laptop-mode-tools 或 tlp。

有人能帮我弄清楚发生了什么吗?我觉得像这样的雷电设备应该可以在 Ubuntu 上运行。如果有什么我预料到的问题,那就是 eGPU 的 GPU 部分,但它工作正常,因为我目前正在由底座驱动的双 4k 显示器上打字,唯一的问题是以太网(插入底座时键盘、鼠标、USB 声卡都可以正常工作)。

相关内容