patch "usb: dwc3: gadget: properly account queued requests" added to usb-linus
Subsystems (3)
This is a note to let you know that I've just added the patch titled
usb: dwc3: gadget: properly account queued requests
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree (usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the next -rc kernel release.
If you have any questions about this process, please let me know.
Quoted 1 line
From
a9c3ca5fae6bf73770f0576eaf57d5f1305ef4b3Mon Sep 17 00:00:00 2001
From: Felipe Balbi <[email protected]>
Date: Wed, 5 Oct 2016 14:24:37 +0300
Subject: usb: dwc3: gadget: properly account queued requests
Some requests could be accounted for multiple times. Let's fix that so each and every requests is accounted for only once.
--- drivers/usb/dwc3/gadget.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
drivers/usb/dwc3/gadget.c +5 -3
@@ -783,6 +783,7 @@ static void dwc3_prepare_one_trb(struct dwc3_ep *dep, req->trb = trb; req->trb_dma =dwc3_trb_dma_offset (dep, trb); req->first_trb_index = dep->trb_enqueue; + dep->queued_requests++; }dwc3_ep_inc_enq (dep);
@@ -833,8 +834,6 @@ static void dwc3_prepare_one_trb(struct dwc3_ep *dep, trb->ctrl |=DWC3_TRB_CTRL_HWO ; - dep->queued_requests++; -trace_dwc3_prepare_trb (dep, trb); }
@@ -1861,8 +1860,11 @@ static int __dwc3_cleanup_done_trbs(struct dwc3 *dwc, struct dwc3_ep *dep,unsigned int s_pkt =0 ;unsigned int trb_status; - dep->queued_requests--;dwc3_ep_inc_deq (dep); + +if (req->trb == trb) + dep->queued_requests--; +trace_dwc3_complete_trb (dep, trb);/*
Signature · 1 line
2.10.0