diff options
author | Felix Fietkau <nbd@nbd.name> | 2018-02-23 10:06:04 +0100 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2018-02-27 11:05:51 +0100 |
commit | 59cae5b9d6d39db2804ed5f0330eb5507d40c34c (patch) | |
tree | c7b239f231b39f1ca74c00b57e27c65526470c85 /net/mac80211/rx.c | |
parent | f74290fdb363665538743d14c4f00aeacdb68d87 (diff) | |
download | linux-59cae5b9d6d39db2804ed5f0330eb5507d40c34c.tar.gz linux-59cae5b9d6d39db2804ed5f0330eb5507d40c34c.tar.bz2 linux-59cae5b9d6d39db2804ed5f0330eb5507d40c34c.zip |
mac80211: support AP 4-addr mode fast-rx
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r-- | net/mac80211/rx.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 3dc162ddc3a6..89dcf9f762ce 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -3783,6 +3783,15 @@ void ieee80211_check_fast_rx(struct sta_info *sta) !(sdata->flags & IEEE80211_SDATA_DONT_BRIDGE_PACKETS) && (sdata->vif.type != NL80211_IFTYPE_AP_VLAN || !sdata->u.vlan.sta); + + if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN && + sdata->u.vlan.sta) { + fastrx.expected_ds_bits |= + cpu_to_le16(IEEE80211_FCTL_FROMDS); + fastrx.sa_offs = offsetof(struct ieee80211_hdr, addr4); + fastrx.internal_forward = 0; + } + break; default: goto clear; |