aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/317-mac80211-minstrel_ht-switch-to-.tx_status_noskb.patch
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-11-18 22:20:45 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-11-18 22:20:45 +0000
commit792d02f2b6e5c7a26b0d56641b36a80d9b6db5f5 (patch)
tree16835b93a0c5cce62e1d712a31083aba1f56d300 /package/kernel/mac80211/patches/317-mac80211-minstrel_ht-switch-to-.tx_status_noskb.patch
parentaa17299b5a35d8cd6f5a7e9738a02bcf2f84ca65 (diff)
downloadmaster-187ad058-792d02f2b6e5c7a26b0d56641b36a80d9b6db5f5.tar.gz
master-187ad058-792d02f2b6e5c7a26b0d56641b36a80d9b6db5f5.tar.bz2
master-187ad058-792d02f2b6e5c7a26b0d56641b36a80d9b6db5f5.zip
mac80211: add support for reporting tx status without attached skb
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43297 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/mac80211/patches/317-mac80211-minstrel_ht-switch-to-.tx_status_noskb.patch')
-rw-r--r--package/kernel/mac80211/patches/317-mac80211-minstrel_ht-switch-to-.tx_status_noskb.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/317-mac80211-minstrel_ht-switch-to-.tx_status_noskb.patch b/package/kernel/mac80211/patches/317-mac80211-minstrel_ht-switch-to-.tx_status_noskb.patch
new file mode 100644
index 0000000000..6900005d1d
--- /dev/null
+++ b/package/kernel/mac80211/patches/317-mac80211-minstrel_ht-switch-to-.tx_status_noskb.patch
@@ -0,0 +1,41 @@
+From: Felix Fietkau <nbd@openwrt.org>
+Date: Sat, 15 Nov 2014 22:38:21 +0100
+Subject: [PATCH] mac80211: minstrel_ht: switch to .tx_status_noskb
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+---
+
+--- a/net/mac80211/rc80211_minstrel_ht.c
++++ b/net/mac80211/rc80211_minstrel_ht.c
+@@ -709,11 +709,10 @@ minstrel_aggr_check(struct ieee80211_sta
+ static void
+ minstrel_ht_tx_status(void *priv, struct ieee80211_supported_band *sband,
+ struct ieee80211_sta *sta, void *priv_sta,
+- struct sk_buff *skb)
++ struct ieee80211_tx_info *info)
+ {
+ struct minstrel_ht_sta_priv *msp = priv_sta;
+ struct minstrel_ht_sta *mi = &msp->ht;
+- struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
+ struct ieee80211_tx_rate *ar = info->status.rates;
+ struct minstrel_rate_stats *rate, *rate2;
+ struct minstrel_priv *mp = priv;
+@@ -721,7 +720,8 @@ minstrel_ht_tx_status(void *priv, struct
+ int i;
+
+ if (!msp->is_ht)
+- return mac80211_minstrel.tx_status(priv, sband, sta, &msp->legacy, skb);
++ return mac80211_minstrel.tx_status_noskb(priv, sband, sta,
++ &msp->legacy, info);
+
+ /* This packet was aggregated but doesn't carry status info */
+ if ((info->flags & IEEE80211_TX_CTL_AMPDU) &&
+@@ -1343,7 +1343,7 @@ static u32 minstrel_ht_get_expected_thro
+
+ static const struct rate_control_ops mac80211_minstrel_ht = {
+ .name = "minstrel_ht",
+- .tx_status = minstrel_ht_tx_status,
++ .tx_status_noskb = minstrel_ht_tx_status,
+ .get_rate = minstrel_ht_get_rate,
+ .rate_init = minstrel_ht_rate_init,
+ .rate_update = minstrel_ht_rate_update,