This reverts commit f2267089ea17fa97b796b1b4247e3f8957655df3.

That commit causes more problem than fixes. Firstly, kfree()
should be called after usb_ep_dequeue() and secondly, the way
things are, we will try to dequeue a request that has already
completed much more frequently than one which is pending.

Cc: Li Jun <b47...@freescale.com>
Signed-off-by: Felipe Balbi <ba...@ti.com>
---

Greg, can you still apply this for v3.17 final ? Please take it as a patch
directly so we avoid a pull request for a single patch. If you prefer a pull,
let me know.

Li Jun, a proper change to guarantee there will be no pending requests when we
unload a composite gadget driver needs to be more involved. I'll send patches
(which I plan on adding to v3.19 only) shortly. Please give me your Tested-by
once I send such patches.

 drivers/usb/gadget/composite.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c
index 6935a82..f801519 100644
--- a/drivers/usb/gadget/composite.c
+++ b/drivers/usb/gadget/composite.c
@@ -1956,7 +1956,6 @@ void composite_dev_cleanup(struct usb_composite_dev *cdev)
        }
        if (cdev->req) {
                kfree(cdev->req->buf);
-               usb_ep_dequeue(cdev->gadget->ep0, cdev->req);
                usb_ep_free_request(cdev->gadget->ep0, cdev->req);
        }
        cdev->next_string_id = 0;
-- 
2.1.0.243.g30d45f7

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to