diff options
| author | Mayank Rana <mrana@codeaurora.org> | 2016-06-03 18:18:43 -0700 |
|---|---|---|
| committer | Kyle Yan <kyan@codeaurora.org> | 2016-06-16 15:23:23 -0700 |
| commit | bb2f0dff03a9fab56cebcc8665572541a5bc70ff (patch) | |
| tree | 31e5bac184be43c6ec4a47217916ae616558970a | |
| parent | 4b0289c5824056486bb13dfb9e5435fac99724cd (diff) | |
usb: gadget: f_diag: Decrement counter if zero length packet queueing fails
If usb_ep_queue() fails on queueing zero-length packet, driver is not
decrementing dpkts_tolaptop_pending counter which may results into seeing
count mismatch. Hence decrement dpkts_tolaptop_pending if zero length
packet queueing fails.
CRs-Fixed: 1027031
Change-Id: Id3c7c2627bdf37524067512db51d3180c570106d
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
| -rw-r--r-- | drivers/usb/gadget/function/f_diag.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/gadget/function/f_diag.c b/drivers/usb/gadget/function/f_diag.c index bddee84d81e0..aea1e1d0fa11 100644 --- a/drivers/usb/gadget/function/f_diag.c +++ b/drivers/usb/gadget/function/f_diag.c @@ -270,6 +270,7 @@ static void diag_write_complete(struct usb_ep *ep, /* Queue zero length packet */ if (!usb_ep_queue(ctxt->in, req, GFP_ATOMIC)) return; + ctxt->dpkts_tolaptop_pending--; } else { ctxt->dpkts_tolaptop++; } |
