]> git.hungrycats.org Git - linux/commitdiff
mac80211: fix a memory leak on sta rate selection table
authorFelix Fietkau <nbd@openwrt.org>
Tue, 27 May 2014 20:33:57 +0000 (22:33 +0200)
committerJiri Slaby <jslaby@suse.cz>
Thu, 17 Jul 2014 13:04:38 +0000 (15:04 +0200)
commit 53d045258ee2e38b1e882617cb0799a04d05f5fa upstream.

If the rate control algorithm uses a selection table, it
is leaked when the station is destroyed - fix that.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Reported-by: Christophe Prévotaux <cprevotaux@nltinc.com>
Fixes: 0d528d85c519 ("mac80211: improve the rate control API")
[add commit log entry, remove pointless NULL check]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
net/mac80211/sta_info.c

index db41c190e76d985e3fb13e1c93b34f53efa1d089..37025725c369a778a8b5b565688468a165ef1c48 100644 (file)
@@ -271,6 +271,7 @@ void sta_info_free(struct ieee80211_local *local, struct sta_info *sta)
 
        sta_dbg(sta->sdata, "Destroyed STA %pM\n", sta->sta.addr);
 
+       kfree(rcu_dereference_raw(sta->sta.rates));
        kfree(sta);
 }