can: ems_usb: Fix memory leak on ems_usb_disconnect()
authorAnton Vasilyev <vasilyev@ispras.ru>
Fri, 27 Jul 2018 15:50:42 +0000 (18:50 +0300)
committerBen Hutchings <ben@decadent.org.uk>
Tue, 20 Nov 2018 18:05:52 +0000 (18:05 +0000)
commit 72c05f32f4a5055c9c8fe889bb6903ec959c0aad upstream.

ems_usb_probe() allocates memory for dev->tx_msg_buffer, but there
is no its deallocation in ems_usb_disconnect().

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Anton Vasilyev <vasilyev@ispras.ru>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/net/can/usb/ems_usb.c

index a5ede52f1a8f840df4b655f7cb2ea09e08c111f6..76500184c54b8de2bebd17f50f3f8e163db6cb5f 100644 (file)
@@ -1084,6 +1084,7 @@ static void ems_usb_disconnect(struct usb_interface *intf)
                usb_free_urb(dev->intr_urb);
 
                kfree(dev->intr_in_buffer);
+               kfree(dev->tx_msg_buffer);
        }
 }