diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-10-10 13:02:27 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-10-10 13:02:27 +0000 |
commit | 47d72148b4e48a4bc5be66e4b982af56a757ccbc (patch) | |
tree | 48178b4f067528664585efbcf92683ac298a831e /package/mac80211 | |
parent | f7a905d18d80d09c2e0dacf78ade185f80e09fa9 (diff) |
mac80211: use ieee80211_free_txskb in a few more places
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33695 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211')
-rw-r--r-- | package/mac80211/patches/527-mac80211_use_ieee80211_free_txskb.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/package/mac80211/patches/527-mac80211_use_ieee80211_free_txskb.patch b/package/mac80211/patches/527-mac80211_use_ieee80211_free_txskb.patch index e6db104849..2ed9be3c33 100644 --- a/package/mac80211/patches/527-mac80211_use_ieee80211_free_txskb.patch +++ b/package/mac80211/patches/527-mac80211_use_ieee80211_free_txskb.patch @@ -105,3 +105,54 @@ } static void ieee80211_check_pending_bar(struct sta_info *sta, u8 *addr, u8 tid) +--- a/net/mac80211/iface.c ++++ b/net/mac80211/iface.c +@@ -826,7 +826,7 @@ static void ieee80211_do_stop(struct iee + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); + if (info->control.vif == &sdata->vif) { + __skb_unlink(skb, &local->pending[i]); +- dev_kfree_skb_irq(skb); ++ ieee80211_free_txskb(&local->hw, skb); + } + } + } +--- a/net/mac80211/sta_info.c ++++ b/net/mac80211/sta_info.c +@@ -587,7 +587,7 @@ static bool sta_info_cleanup_expire_buff + */ + if (!skb) + break; +- dev_kfree_skb(skb); ++ ieee80211_free_txskb(&local->hw, skb); + } + + /* +@@ -616,7 +616,7 @@ static bool sta_info_cleanup_expire_buff + local->total_ps_buffered--; + ps_dbg(sta->sdata, "Buffered frame expired (STA %pM)\n", + sta->sta.addr); +- dev_kfree_skb(skb); ++ ieee80211_free_txskb(&local->hw, skb); + } + + /* +--- a/net/mac80211/util.c ++++ b/net/mac80211/util.c +@@ -406,7 +406,7 @@ void ieee80211_add_pending_skb(struct ie + int queue = info->hw_queue; + + if (WARN_ON(!info->control.vif)) { +- kfree_skb(skb); ++ ieee80211_free_txskb(&local->hw, skb); + return; + } + +@@ -431,7 +431,7 @@ void ieee80211_add_pending_skbs_fn(struc + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); + + if (WARN_ON(!info->control.vif)) { +- kfree_skb(skb); ++ ieee80211_free_txskb(&local->hw, skb); + continue; + } + |