From bb2f0dff03a9fab56cebcc8665572541a5bc70ff Mon Sep 17 00:00:00 2001 From: Mayank Rana Date: Fri, 3 Jun 2016 18:18:43 -0700 Subject: 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 --- drivers/usb/gadget/function/f_diag.c | 1 + 1 file changed, 1 insertion(+) 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++; } -- cgit v1.2.3