From: Oliver Neukum Date: Thu, 23 Oct 2008 17:35:09 +0000 (+0000) Subject: USB: fix memory leak in cdc-acm X-Git-Tag: v2.6.27.4~19 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=837de9e1d92bb73408088f7b5849715d90925fee;p=thirdparty%2Fkernel%2Fstable.git USB: fix memory leak in cdc-acm commit a496c64f1363ec4d67ebdc1e1f619ad6372a574c upstream This fixes a memory leak on disconnect in cdc-acm Thanks to 施金前 for finding it. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c index c257453fa9dec..d996a6108901a 100644 --- a/drivers/usb/class/cdc-acm.c +++ b/drivers/usb/class/cdc-acm.c @@ -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); } }