From: Bjorn Van Tilt Date: Mon, 24 Mar 2014 14:32:08 +0000 (+0100) Subject: can: usb_8dev: Fix memory leak in usb_8dev_start_xmit X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=636d0375e7a850c95a0abc2c214295ce06cd2ab4;p=linux-beck.git can: usb_8dev: Fix memory leak in usb_8dev_start_xmit Fixed a memory leak when an error occurred in the transmit function. In the error handling the urb wasn't freed before returning. There was also a call to the usb_unanchor_urb() function but the urb wasn't anchored. Signed-off-by: Bjorn Van Tilt 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 a0fa1fd5092b..e7247a506586 100644 --- a/drivers/net/can/usb/usb_8dev.c +++ b/drivers/net/can/usb/usb_8dev.c @@ -697,8 +697,8 @@ static netdev_tx_t usb_8dev_start_xmit(struct sk_buff *skb, return NETDEV_TX_OK; nofreecontext: - usb_unanchor_urb(urb); usb_free_coherent(priv->udev, size, buf, urb->transfer_dma); + usb_free_urb(urb); netdev_warn(netdev, "couldn't find free context");