Re: [RFT PATCHv3 1/3] xhci: fix frame id calculation and checks for isoc URBs
Dylan Robinson <[email protected]>
| Newsgroups | org.kernel.vger.linux-usb |
|---|---|
| Message-ID | <CA+Df+jct3+qG4m=Bv6A6WVu6JiM6Yj96oF=Emes32Q0+q0TWCA@mail.gmail.com> |
On Fri, Aug 7, 2026 at 5:29 PM Michal Pecio wrote: > Complicated by the fact that new URBs may be submitted after the > underrun occurs but before our IRQ handler learns about it. Those > are doomed to execute with some lag (unless unlinked). We could > mark them -EXDEV or some such so that drivers don't trust them. IMO, it would be fine for the URBs that are submitted after the underrun but before the IRQ handler learns about it to have their transfers happen discontinuously, as long as they are marked -EXDEV or similar upon completion. This only applies to URBs submitted from their own endpoint's completion handler, right? Any driver establishing a stream must submit more than one URB at startup. I've often seen discontinuities with the class audio driver happening with these initial URBs. These would not be detectable from the completion status because they are not submitted from completion context. However, perhaps once the non-CFC implementation starts streams without SIA, a class driver could instead use start_frame continuity across completions to detect these cases.