Browse Source

rtlwifi: fix memory leak for USB device

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).

Cc: stable@vger.kernel.org
Signed-off-by: Peter Wu <peter@lekensteyn.nl>
ACKed-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Peter Wu 9 years ago
parent
commit
17bc55864f
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/net/wireless/realtek/rtlwifi/usb.c

+ 2 - 0
drivers/net/wireless/realtek/rtlwifi/usb.c

@@ -531,6 +531,8 @@ static void _rtl_usb_rx_process_noagg(struct ieee80211_hw *hw,
 			ieee80211_rx(hw, skb);
 			ieee80211_rx(hw, skb);
 		else
 		else
 			dev_kfree_skb_any(skb);
 			dev_kfree_skb_any(skb);
+	} else {
+		dev_kfree_skb_any(skb);
 	}
 	}
 }
 }