summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMayank Rana <mrana@codeaurora.org>2016-06-03 18:18:43 -0700
committerKyle Yan <kyan@codeaurora.org>2016-06-16 15:23:23 -0700
commitbb2f0dff03a9fab56cebcc8665572541a5bc70ff (patch)
tree31e5bac184be43c6ec4a47217916ae616558970a
parent4b0289c5824056486bb13dfb9e5435fac99724cd (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.c1
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++;
}