浏览代码

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 <oneukum@suse.de>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Oliver Neukum 16 年之前
父节点
当前提交
a496c64f13
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      drivers/usb/class/cdc-acm.c

+ 2 - 1
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);
 	}
 }