diff options
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); + } + |