aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-02-11 15:00:55 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-02-11 15:00:55 +0000
commit9d93ca72fb57f4df455518c1a7f891b1585cc0d4 (patch)
treecb2bb609e4694006f66b1cf5b72d969aab9c13f4
parent97c3a186fbbb6fc9a26d61629991df77052dcab2 (diff)
downloadmaster-187ad058-9d93ca72fb57f4df455518c1a7f891b1585cc0d4.tar.gz
master-187ad058-9d93ca72fb57f4df455518c1a7f891b1585cc0d4.tar.bz2
master-187ad058-9d93ca72fb57f4df455518c1a7f891b1585cc0d4.zip
mac80211: send wpa frames through the WMM voice queue - improves connection reliability
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39572 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/kernel/mac80211/patches/300-pending_work.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/300-pending_work.patch b/package/kernel/mac80211/patches/300-pending_work.patch
index 52db79f408..a790183f74 100644
--- a/package/kernel/mac80211/patches/300-pending_work.patch
+++ b/package/kernel/mac80211/patches/300-pending_work.patch
@@ -1,3 +1,16 @@
+commit 82ed9e3ccc02797df2ffe4b78127c4cd5f799a41
+Author: Felix Fietkau <nbd@openwrt.org>
+Date: Tue Feb 11 15:54:13 2014 +0100
+
+ mac80211: send control port protocol frames to the VO queue
+
+ Improves reliability of wifi connections with WPA, since authentication
+ frames are prioritized over normal traffic and also typically exempt
+ from aggregation.
+
+ Cc: stable@vger.kernel.org
+ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+
commit d4426800f71e972feaa33e04c5801fc730627bdd
Author: Stanislaw Gruszka <stf_xl@wp.pl>
Date: Mon Feb 10 22:38:28 2014 +0100
@@ -2705,3 +2718,17 @@ Date: Thu Jan 23 20:06:34 2014 +0100
bool rfkill_off;
u16 seqno;
};
+--- a/net/mac80211/wme.c
++++ b/net/mac80211/wme.c
+@@ -154,6 +154,11 @@ u16 ieee80211_select_queue(struct ieee80
+ return IEEE80211_AC_BE;
+ }
+
++ if (skb->protocol == sdata->control_port_protocol) {
++ skb->priority = 7;
++ return ieee80211_downgrade_queue(sdata, skb);
++ }
++
+ /* use the data classifier to determine what 802.1d tag the
+ * data frame has */
+ rcu_read_lock();