usb: gadget: composite: dequeue cdev->req before free it in composite_dev_cleanup
authorLi Jun <B47624@freescale.com>
Tue, 15 Jul 2014 14:07:40 +0000 (22:07 +0800)
committerFelipe Balbi <balbi@ti.com>
Wed, 16 Jul 2014 15:05:01 +0000 (10:05 -0500)
This patch try to dequeue the cdev->req to guarantee the request is not queued
before free it.

Signed-off-by: Li Jun <b47624@freescale.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/gadget/composite.c

index f80151932053d1f0216e9f21156c1a38e85a34bd..6935a822ce2b871553ff7074b7a0f781f057b4b3 100644 (file)
@@ -1956,6 +1956,7 @@ 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;