diff options
author | Felix Fietkau <nbd@openwrt.org> | 2016-02-29 17:19:04 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2016-02-29 17:19:04 +0000 |
commit | f3a1db04f0ebba577598f1577d3c8c756c8bf757 (patch) | |
tree | eecfe6c9154a9e0717573daba16d1c58bd674d2e /package/kernel/mac80211/patches/314-mac80211-mesh-avoid-pointless-station-lookup.patch | |
parent | 5db86ba649298bef0066cac8e4d0e17834f6b7b0 (diff) | |
download | upstream-f3a1db04f0ebba577598f1577d3c8c756c8bf757.tar.gz upstream-f3a1db04f0ebba577598f1577d3c8c756c8bf757.tar.bz2 upstream-f3a1db04f0ebba577598f1577d3c8c756c8bf757.zip |
mac80211: backport from trunk r48782 + required kernel patches and mt76, mwlwifi
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48822 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/mac80211/patches/314-mac80211-mesh-avoid-pointless-station-lookup.patch')
-rw-r--r-- | package/kernel/mac80211/patches/314-mac80211-mesh-avoid-pointless-station-lookup.patch | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/package/kernel/mac80211/patches/314-mac80211-mesh-avoid-pointless-station-lookup.patch b/package/kernel/mac80211/patches/314-mac80211-mesh-avoid-pointless-station-lookup.patch deleted file mode 100644 index 9105a64489..0000000000 --- a/package/kernel/mac80211/patches/314-mac80211-mesh-avoid-pointless-station-lookup.patch +++ /dev/null @@ -1,33 +0,0 @@ -From: Johannes Berg <johannes.berg@intel.com> -Date: Fri, 20 Mar 2015 16:24:23 +0100 -Subject: [PATCH] mac80211: mesh: avoid pointless station lookup - -In ieee80211_build_hdr(), the station is looked up to build the -header correctly (QoS field) and to check for authorization. For -mesh, authorization isn't checked here, and QoS capability is -mandatory, so the station lookup can be avoided. - -Signed-off-by: Johannes Berg <johannes.berg@intel.com> ---- - ---- a/net/mac80211/tx.c -+++ b/net/mac80211/tx.c -@@ -2130,12 +2130,14 @@ static struct sk_buff *ieee80211_build_h - } - - /* -- * There's no need to try to look up the destination -- * if it is a multicast address (which can only happen -- * in AP mode) -+ * There's no need to try to look up the destination station -+ * if it is a multicast address. In mesh, there's no need to -+ * look up the station at all as it always must be QoS capable -+ * and mesh mode checks authorization later. - */ - multicast = is_multicast_ether_addr(hdr.addr1); -- if (!multicast && !have_station) { -+ if (!multicast && !have_station && -+ !ieee80211_vif_is_mesh(&sdata->vif)) { - sta = sta_info_get(sdata, hdr.addr1); - if (sta) { - authorized = test_sta_flag(sta, WLAN_STA_AUTHORIZED); |