]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
USB: fix memory leak in cdc-acm
authorOliver Neukum <oliver@neukum.org>
Thu, 23 Oct 2008 17:35:09 +0000 (17:35 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sat, 25 Oct 2008 21:32:38 +0000 (14:32 -0700)
commit a496c64f1363ec4d67ebdc1e1f619ad6372a574c upstream

This fixes a memory leak on disconnect in cdc-acm

Thanks to 施金前 for finding it.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/class/cdc-acm.c

index c257453fa9dec42ea864b6cbd89dbd6a3cab5781..d996a6108901aaf34f1de1fe48192c34000930d9 100644 (file)
@@ -849,9 +849,10 @@ static void acm_write_buffers_free(struct acm *acm)
 {
        int i;
        struct acm_wb *wb;
+       struct usb_device *usb_dev = interface_to_usbdev(acm->control);
 
        for (wb = &acm->wb[0], i = 0; i < ACM_NW; i++, wb++) {
-               usb_buffer_free(acm->dev, acm->writesize, wb->buf, wb->dmah);
+               usb_buffer_free(usb_dev, acm->writesize, wb->buf, wb->dmah);
        }
 }