I have a suspicion as to what causes this and Linux might already have a quirk to deal with it. I think this happens when the USB transfer size is not a multiple of the number of channels.
Doing such work in kernelspace often makes it non-interruptible, may have latency implications for other stuf, etc. Also userspace is often doing conversions *anyway* which means you can amortize channel swaps, often for free.
-
-
No? Just no. We've had deferrable work queues since like 2.5? And you can amortize that on either side, but putting it in userland means you have to get two pieces of software right.
-
(also make the userland bits there also an ebpf rule and whenever you don't need RT semantics you get to do it for megs at a time without a context switch. That plus io_uring might be kind of fun.)
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.