From: Felipe Balbi Date: Thu, 18 Sep 2014 14:31:32 +0000 (-0500) Subject: Revert "usb: gadget: composite: dequeue cdev->req before free it in composite_dev_cle... X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=bf17eba7ae1e813b0ad67cb1078dcbd7083b906e;p=linux-beck.git Revert "usb: gadget: composite: dequeue cdev->req before free it in composite_dev_cleanup" 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 Signed-off-by: Felipe Balbi Cc: stable # 3.17 Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c index e07eddbb3f8c..a8c18df171c3 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;