OSDN Git Service

mac80211: accept aggregation sessions on 6 GHz
authorJohannes Berg <johannes.berg@intel.com>
Thu, 28 May 2020 19:34:44 +0000 (21:34 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Sun, 31 May 2020 09:27:16 +0000 (11:27 +0200)
On 6 GHz, stations don't have ht_supported set, but they can
still do aggregation since they must have HE, allow that.

Link: https://lore.kernel.org/r/20200528213443.776d3c891b64.Ifa099d450617b50c691832b3c4aa08959fab520a@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/agg-rx.c
net/mac80211/agg-tx.c

index 4d1c335..7f245e9 100644 (file)
@@ -9,7 +9,7 @@
  * Copyright 2007, Michael Wu <flamingice@sourmilk.net>
  * Copyright 2007-2010, Intel Corporation
  * Copyright(c) 2015-2017 Intel Deutschland GmbH
- * Copyright (C) 2018        Intel Corporation
+ * Copyright (C) 2018-2020 Intel Corporation
  */
 
 /**
@@ -292,7 +292,8 @@ void ___ieee80211_start_rx_ba_session(struct sta_info *sta,
                goto end;
        }
 
-       if (!sta->sta.ht_cap.ht_supported) {
+       if (!sta->sta.ht_cap.ht_supported &&
+           sta->sdata->vif.bss_conf.chandef.chan->band != NL80211_BAND_6GHZ) {
                ht_dbg(sta->sdata,
                       "STA %pM erroneously requests BA session on tid %d w/o QoS\n",
                       sta->sta.addr, tid);
index c2d5f51..b37c8a9 100644 (file)
@@ -593,7 +593,8 @@ int ieee80211_start_tx_ba_session(struct ieee80211_sta *pubsta, u16 tid,
                 "Requested to start BA session on reserved tid=%d", tid))
                return -EINVAL;
 
-       if (!pubsta->ht_cap.ht_supported)
+       if (!pubsta->ht_cap.ht_supported &&
+           sta->sdata->vif.bss_conf.chandef.chan->band != NL80211_BAND_6GHZ)
                return -EINVAL;
 
        if (WARN_ON_ONCE(!local->ops->ampdu_action))