aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/sta_info.c
diff options
context:
space:
mode:
authorSara Sharon <sara.sharon@intel.com>2018-02-19 14:48:35 +0200
committerJohannes Berg <johannes.berg@intel.com>2018-02-19 14:53:08 +0100
commitd78d9ee9d40aca4781d2c5334972544601a4c3a2 (patch)
treefe02c96847d7caef8d07a4cd5b553250d853feb5 /net/mac80211/sta_info.c
parentmac80211: round IEEE80211_TX_STATUS_HEADROOM up to multiple of 4 (diff)
downloadlinux-dev-d78d9ee9d40aca4781d2c5334972544601a4c3a2.tar.xz
linux-dev-d78d9ee9d40aca4781d2c5334972544601a4c3a2.zip
mac80211: fix a possible leak of station stats
If sta_info_alloc fails after allocating the per CPU statistics, they are not properly freed. Fixes: c9c5962b56c1 ("mac80211: enable collecting station statistics per-CPU") Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/sta_info.c')
-rw-r--r--net/mac80211/sta_info.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
index 0c5627f8a104..8d7e3732bb61 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
@@ -433,6 +433,7 @@ free_txq:
if (sta->sta.txq[0])
kfree(to_txq_info(sta->sta.txq[0]));
free:
+ free_percpu(sta->pcpu_rx_stats);
#ifdef CONFIG_MAC80211_MESH
kfree(sta->mesh);
#endif