libusb 不传输所有 USB 3.0 批量端点数据包

libusb 不传输所有 USB 3.0 批量端点数据包

我正在使用 Ubuntu 14.04,

ubuntu-14 3.13.0-74-generic #118-Ubuntu SMP Thu Dec 17 22:52:10 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

在过去的几天里,我遇到了与 libusb 批量传输(异步)相关的问题。当从 libusb 启用调试打印时,我可以看到 libusb 接收到了更多数据包(例如,5 个数据包,每个数据包 163840 字节)。但是,使用 libsub 的应用程序仅调用了一次回调(例如,仅接收到 163840 字节)。

我们在过去几天才发现这个问题,而且计算机已经更新了最新的内核。例如,未更新或内核日期为 2015 年 7 月或 2015 年 1 月的计算机仍在运行。

今天我将 Linux 内核升级到 3.19 进行测试,但没有什么变化。使用 3.19 内核时,我在 dmesg 中收到以下消息,

[14720.137271] xhci_hcd 0000:08:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 1
[14720.137282] xhci_hcd 0000:08:00.0: Looking for event-dma 00000000b25bd400 trb-start 00000000b25bd2d0 trb-end 00000000b25bd360 seg-start 00000000b25bd000 seg-end 00000000b25bdff0
[14720.138698] xhci_hcd 0000:08:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 1
[14720.138706] xhci_hcd 0000:08:00.0: Looking for event-dma 00000000b25bd4a0 trb-start 00000000b25bd2d0 trb-end 00000000b25bd360 seg-start 00000000b25bd000 seg-end 00000000b25bdff0
[14720.140146] xhci_hcd 0000:08:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 1
[14720.140155] xhci_hcd 0000:08:00.0: Looking for event-dma 00000000b25bd540 trb-start 00000000b25bd2d0 trb-end 00000000b25bd360 seg-start 00000000b25bd000 seg-end 00000000b25bdff0
[14720.140188] xhci_hcd 0000:08:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13
[14720.140192] xhci_hcd 0000:08:00.0: Looking for event-dma 00000000b25bd550 trb-start 00000000b25bd2d0 trb-end 00000000b25bd360 seg-start 00000000b25bd000 seg-end 00000000b25bdff0

您是否发现最新内核和 libusb(尤其是 USB 3.0)可能存在冲突?最近有人遇到过类似的问题吗?

相关内容