aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/sta_info.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/sta_info.c')
-rw-r--r--net/mac80211/sta_info.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
index ffe8a49d8927..60ca07804056 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
@@ -104,6 +104,7 @@ static void sta_info_release(struct kref *kref)
104 struct sta_info *sta = container_of(kref, struct sta_info, kref); 104 struct sta_info *sta = container_of(kref, struct sta_info, kref);
105 struct ieee80211_local *local = sta->local; 105 struct ieee80211_local *local = sta->local;
106 struct sk_buff *skb; 106 struct sk_buff *skb;
107 int i;
107 108
108 /* free sta structure; it has already been removed from 109 /* free sta structure; it has already been removed from
109 * hash table etc. external structures. Make sure that all 110 * hash table etc. external structures. Make sure that all
@@ -116,6 +117,8 @@ static void sta_info_release(struct kref *kref)
116 while ((skb = skb_dequeue(&sta->tx_filtered)) != NULL) { 117 while ((skb = skb_dequeue(&sta->tx_filtered)) != NULL) {
117 dev_kfree_skb_any(skb); 118 dev_kfree_skb_any(skb);
118 } 119 }
120 for (i = 0; i < STA_TID_NUM; i++)
121 del_timer_sync(&sta->ampdu_mlme.tid_rx[i].session_timer);
119 rate_control_free_sta(sta->rate_ctrl, sta->rate_ctrl_priv); 122 rate_control_free_sta(sta->rate_ctrl, sta->rate_ctrl_priv);
120 rate_control_put(sta->rate_ctrl); 123 rate_control_put(sta->rate_ctrl);
121 kfree(sta); 124 kfree(sta);