Re: [PATCH] usb: xhci: Don't unchain link TRBs on quirky HCs
From: Mathias Nyman
Date: Fri Nov 14 2025 - 07:15:28 EST
On 11/14/25 13:32, Michal Pecio wrote:
On Tue, 11 Nov 2025 18:19:38 +0200, Mathias Nyman wrote:
On 11/7/25 12:08, Michal Pecio wrote:
+static void td_to_noop(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
+ struct xhci_td *td, bool flip_cycle)
we could avoid passing xhci pointer to td_to_noop() and just grab it from
the xhci_virt_ep structure instead. i.e. ep->xhci
I can do a v2 if you want.
But OTOH, I didn't expect such pointer to exist (though I'm sure I must
have seen it many times) because it doesn't seem strictly necessary.
Maybe do the reverse and get rid of ep->xhci, or stop adding new users
and clean up existing ones along the way?
Main users are invalidate_cancelled_tds()/giveback_invalidated_tds(),
their callers all have xhci and could easily supply it to them. And we
even discussed removing the latter completely, but I got sidetracked by
issues with URB_ZERO_PACKET.
Ok, I'll take this v1 now as it is.
It prevents a potential issue, and it's tested by you.
We can then later figure out how we want to clean up and refactor things.
Thanks
Mathias