From: Oliver Neukum Date: Tue, 21 Oct 2008 08:39:04 +0000 (+0200) Subject: USB: fix memory leak in cdc-acm X-Git-Tag: v2.6.28-rc1~33^2~1 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=a496c64f1363ec4d67ebdc1e1f619ad6372a574c;p=linux-2.6-omap-h63xx.git USB: fix memory leak in cdc-acm This fixes a memory leak on disconnect in cdc-acm Thanks to 施金前 for finding it. Signed-off-by: Oliver Neukum Cc: stable Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c index fab23ee8702..20104443081 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); } }