aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2012-10-10 13:02:27 +0000
committerFelix Fietkau <nbd@openwrt.org>2012-10-10 13:02:27 +0000
commit7202369b1aa25d580c7f8f73f55ba5434987259d (patch)
tree48178b4f067528664585efbcf92683ac298a831e
parent2a11515d037f323c9e4ed9424d251e1646e946bb (diff)
downloadmaster-187ad058-7202369b1aa25d580c7f8f73f55ba5434987259d.tar.gz
master-187ad058-7202369b1aa25d580c7f8f73f55ba5434987259d.tar.bz2
master-187ad058-7202369b1aa25d580c7f8f73f55ba5434987259d.zip
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
-rw-r--r--package/mac80211/patches/527-mac80211_use_ieee80211_free_txskb.patch51
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;
+ }
+