Commit bc215352 authored by Mathias Nyman's avatar Mathias Nyman Committed by Treehugger Robot
Browse files

UPSTREAM: xhci: Mitigate failed set dequeue pointer commands



Avoid xHC host from processing a cancelled URB by always turning
cancelled URB TDs into no-op TRBs before queuing a 'Set TR Deq' command.

If the command fails then xHC will start processing the cancelled TD
instead of skipping it once endpoint is restarted, causing issues like
Babble error.

This is not a complete solution as a failed 'Set TR Deq' command does not
guarantee xHC TRB caches are cleared.

Bug: 254441685
Fixes: 4db35692 ("xhci: turn cancelled td cleanup to its own function")
Cc: stable@vger.kernel.org
Signed-off-by: default avatarMathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20241016140000.783905-3-mathias.nyman@linux.intel.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit fe49df60)
Signed-off-by: default avatarLee Jones <joneslee@google.com>
Change-Id: I9553461df5c508ca1c4ee720ad893e1a4485bee7
parent 270f4894
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment