diff options
author | Felix Fietkau <nbd@openwrt.org> | 2014-11-18 22:20:45 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2014-11-18 22:20:45 +0000 |
commit | 792d02f2b6e5c7a26b0d56641b36a80d9b6db5f5 (patch) | |
tree | 16835b93a0c5cce62e1d712a31083aba1f56d300 /package/kernel/mac80211/patches/313-mac80211-minstrel_ht-add-a-small-optimization-to-min.patch | |
parent | aa17299b5a35d8cd6f5a7e9738a02bcf2f84ca65 (diff) | |
download | master-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/313-mac80211-minstrel_ht-add-a-small-optimization-to-min.patch')
-rw-r--r-- | package/kernel/mac80211/patches/313-mac80211-minstrel_ht-add-a-small-optimization-to-min.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/313-mac80211-minstrel_ht-add-a-small-optimization-to-min.patch b/package/kernel/mac80211/patches/313-mac80211-minstrel_ht-add-a-small-optimization-to-min.patch new file mode 100644 index 0000000000..ba2ce1eb8d --- /dev/null +++ b/package/kernel/mac80211/patches/313-mac80211-minstrel_ht-add-a-small-optimization-to-min.patch @@ -0,0 +1,33 @@ +From: Felix Fietkau <nbd@openwrt.org> +Date: Sat, 15 Nov 2014 22:13:38 +0100 +Subject: [PATCH] mac80211: minstrel_ht: add a small optimization to + minstrel_aggr_check + +Check the queue mapping earlier, skb->queue_mapping is more likely than +skb->data to still be in d-cache. + +Signed-off-by: Felix Fietkau <nbd@openwrt.org> +--- + +--- a/net/mac80211/rc80211_minstrel_ht.c ++++ b/net/mac80211/rc80211_minstrel_ht.c +@@ -690,6 +690,9 @@ minstrel_aggr_check(struct ieee80211_sta + struct sta_info *sta = container_of(pubsta, struct sta_info, sta); + u16 tid; + ++ if (skb_get_queue_mapping(skb) == IEEE80211_AC_VO) ++ return; ++ + if (unlikely(!ieee80211_is_data_qos(hdr->frame_control))) + return; + +@@ -700,9 +703,6 @@ minstrel_aggr_check(struct ieee80211_sta + if (likely(sta->ampdu_mlme.tid_tx[tid])) + return; + +- if (skb_get_queue_mapping(skb) == IEEE80211_AC_VO) +- return; +- + ieee80211_start_tx_ba_session(pubsta, tid, 5000); + } + |