Messages in this thread Patch in this message | | | From | Douglas Anderson <> | Subject | [PATCH v2] usb: dwc2: host: do not delay retries after successful transfer | Date | Tue, 17 Jul 2018 13:10:10 -0700 |
| |
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
When handling split transactions we should not be delaying retrying SSPLIT/CSPLIT after we successfully communicate with the device, so let's reset dtd->num_naks counter when handling XFERCOMPL.
Fixes: 38d2b5fb75c1 ("usb: dwc2: host: Don't retry NAKed transactions right away") Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Douglas Anderson <dianders@chromium.org> ---
Changes in v2: - Move clearing num_naks to the start to avoid use after free
drivers/usb/dwc2/hcd_intr.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/drivers/usb/dwc2/hcd_intr.c b/drivers/usb/dwc2/hcd_intr.c index 8ce10caf3e19..4e1953b2955e 100644 --- a/drivers/usb/dwc2/hcd_intr.c +++ b/drivers/usb/dwc2/hcd_intr.c @@ -994,6 +994,8 @@ static void dwc2_hc_xfercomp_intr(struct dwc2_hsotg *hsotg, int pipe_type; int urb_xfer_done; + qtd->num_naks = 0; + if (dbg_hc(chan)) dev_vdbg(hsotg->dev, "--Host Channel %d Interrupt: Transfer Complete--\n", -- 2.18.0.203.gfac676dfb9-goog
| |