Commit 741b41b4 authored by Niklas Neronin's avatar Niklas Neronin Committed by Greg Kroah-Hartman

usb: xhci: fix duplicate stall handling in handle_tx_event()

Stall handling is managed in the 'process_*' functions, which are called
right before the 'goto' stall handling code snippet. Thus, there should
be a return after the 'process_*' functions. Otherwise, the stall code may
run twice.

Fixes: 1b349f21 ("usb: xhci: add 'goto' for halted endpoint check in handle_tx_event()")
Reported-by: default avatarMichal Pecio <michal.pecio@gmail.com>
Signed-off-by: default avatarNiklas Neronin <niklas.neronin@linux.intel.com>
Signed-off-by: default avatarMathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20240809124408.505786-3-mathias.nyman@linux.intel.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent dcdb52d9
...@@ -2910,6 +2910,7 @@ static int handle_tx_event(struct xhci_hcd *xhci, ...@@ -2910,6 +2910,7 @@ static int handle_tx_event(struct xhci_hcd *xhci,
process_isoc_td(xhci, ep, ep_ring, td, ep_trb, event); process_isoc_td(xhci, ep, ep_ring, td, ep_trb, event);
else else
process_bulk_intr_td(xhci, ep, ep_ring, td, ep_trb, event); process_bulk_intr_td(xhci, ep, ep_ring, td, ep_trb, event);
return 0;
check_endpoint_halted: check_endpoint_halted:
if (xhci_halted_host_endpoint(ep_ctx, trb_comp_code)) if (xhci_halted_host_endpoint(ep_ctx, trb_comp_code))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment