ath9k_htc: rare leak in ath9k_hif_usb_alloc_tx_urbs()
PATCH 2/2 ath9k_htc: rare leak in ath9k_hif_usb_alloc_tx_urbs()
This is obviously a small picky thing. The original error handling code doesn't free the most recent allocations which haven't been added to the hif_dev->tx.tx_buf list yet.
Signed-off-by Dan Carpenter <[email protected]>
drivers/net/wireless/ath/ath9k/hif_usb.c +4 -0
@@ -607,6 +609,10 @@ static int ath9k_hif_usb_alloc_tx_urbs(struct hif_device_usb *hif_dev)return 0 ; err: +if (tx_buf) { +kfree (tx_buf->buf); +kfree (tx_buf); + }ath9k_hif_usb_dealloc_tx_urbs (hif_dev);return -ENOMEM ; }
PATCH 2/2 ath9k_htc: rare leak in ath9k_hif_usb_alloc_tx_urbs()
Quoted 5 lines · Dan Carpenter
This is obviously a small picky thing. The original error handling code doesn't free the most recent allocations which haven't been added to the
hif_dev->tx.tx_buflist yet.Signed-off-by Dan Carpenter <[email protected]>
Thanks.
Acked-by Sujith <[email protected]>
Quoted 15 lines
drivers/net/wireless/ath/ath9k/hif_usb.c +4
-0@@ -607,6 +609,10 @@ static int ath9k_hif_usb_alloc_tx_urbs(struct hif_device_usb *hif_dev)return 0 ; err: +if (tx_buf) { +kfree (tx_buf->buf); +kfree (tx_buf); + }ath9k_hif_usb_dealloc_tx_urbs (hif_dev);return -ENOMEM ; }