aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2013-11-20 17:33:50 +0000
committerFelix Fietkau <nbd@openwrt.org>2013-11-20 17:33:50 +0000
commit0707c6810a179fb45be887b6cb2d2010101ac760 (patch)
treec8f2396ecceeeb37844f1363422011490db59a7f /package/kernel/mac80211
parent1a0ae39a7e69821a85c302e9b045c540593fc652 (diff)
downloadupstream-0707c6810a179fb45be887b6cb2d2010101ac760.tar.gz
upstream-0707c6810a179fb45be887b6cb2d2010101ac760.tar.bz2
upstream-0707c6810a179fb45be887b6cb2d2010101ac760.zip
mac80211: fix reorder issues with multicast packets (client mode)
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 38883
Diffstat (limited to 'package/kernel/mac80211')
-rw-r--r--package/kernel/mac80211/patches/300-pending_work.patch10
1 files changed, 10 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/300-pending_work.patch b/package/kernel/mac80211/patches/300-pending_work.patch
index 60a06c60ff..962c5e848b 100644
--- a/package/kernel/mac80211/patches/300-pending_work.patch
+++ b/package/kernel/mac80211/patches/300-pending_work.patch
@@ -3178,6 +3178,16 @@
/* check if we already stored this frame */
if (tid_agg_rx->reorder_buf[index]) {
+@@ -911,7 +903,8 @@ static void ieee80211_rx_reorder_ampdu(s
+ u16 sc;
+ u8 tid, ack_policy;
+
+- if (!ieee80211_is_data_qos(hdr->frame_control))
++ if (!ieee80211_is_data_qos(hdr->frame_control) ||
++ is_multicast_ether_addr(hdr->addr1))
+ goto dont_reorder;
+
+ /*
--- a/net/mac80211/scan.c
+++ b/net/mac80211/scan.c
@@ -526,7 +526,7 @@ static int __ieee80211_start_scan(struct