From: Alexey Khoroshilov Date: Wed, 17 Jul 2013 21:20:33 +0000 (+0400) Subject: can: usb_8dev: fix urb leak on failure path in usb_8dev_start() X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=7671986839f9207f8d76e8ef92b2d3f263a794cc;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git can: usb_8dev: fix urb leak on failure path in usb_8dev_start() If usb_8dev_start() fails to submit urb, it unanchors the urb but forgets to free it. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Signed-off-by: Marc Kleine-Budde --- diff --git a/drivers/net/can/usb/usb_8dev.c b/drivers/net/can/usb/usb_8dev.c index cbd388eea682..8becd3d838b5 100644 --- a/drivers/net/can/usb/usb_8dev.c +++ b/drivers/net/can/usb/usb_8dev.c @@ -779,6 +779,7 @@ static int usb_8dev_start(struct usb_8dev_priv *priv) usb_unanchor_urb(urb); usb_free_coherent(priv->udev, RX_BUFFER_SIZE, buf, urb->transfer_dma); + usb_free_urb(urb); break; }