rtlwifi: fix memory leak for USB device
authorPeter Wu <peter@lekensteyn.nl>
Mon, 7 Dec 2015 00:07:31 +0000 (01:07 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Sat, 13 Feb 2016 10:34:04 +0000 (10:34 +0000)
commit 17bc55864f81dd730d05f09b1641312a7990d636 upstream.

Free skb for received frames with a wrong checksum. This can happen
pretty rapidly, exhausting all memory.

This fixes a memleak (detected with kmemleak). Originally found while
using monitor mode, but it also appears during managed mode (once the
link is up).

Signed-off-by: Peter Wu <peter@lekensteyn.nl>
ACKed-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
[bwh: Backported to 3.2: adjust filename, context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/net/wireless/rtlwifi/usb.c

index 17e6429..968137a 100644 (file)
@@ -500,6 +500,8 @@ static void _rtl_usb_rx_process_noagg(struct ieee80211_hw *hw,
                } else {
                        dev_kfree_skb_any(skb);
                }
+       } else {
+               dev_kfree_skb_any(skb);
        }
 }