mac80211: fix a possible leak of station stats
authorSara Sharon <sara.sharon@intel.com>
Mon, 19 Feb 2018 12:48:35 +0000 (14:48 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 19 Feb 2018 13:53:08 +0000 (14:53 +0100)
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>
net/mac80211/sta_info.c

index 0c5627f8a104e17fb54f55c09da597ef84af5be3..8d7e3732bb613398147f7289d05a7f13e4c499b4 100644 (file)
@@ -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