From: Felix Fietkau <nbd@openwrt.org>
Date: Wed, 10 Oct 2012 13:02:27 +0000 (+0000)
Subject: mac80211: use ieee80211_free_txskb in a few more places
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=cc59e71f8435164b6c73d24cb09ffe8ee3cad18d;p=openwrt%2Fstaging%2Fblocktrron.git

mac80211: use ieee80211_free_txskb in a few more places

SVN-Revision: 33695
---

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;
+ 		}
+