]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
mac80211: accept aggregation sessions on 6 GHz
authorJohannes Berg <johannes.berg@intel.com>
Thu, 28 May 2020 19:34:44 +0000 (21:34 +0200)
committerStefan Bader <stefan.bader@canonical.com>
Mon, 7 Mar 2022 15:34:06 +0000 (16:34 +0100)
BugLink: https://bugs.launchpad.net/bugs/1957991
[ Upstream commit 93382a0d119b3ab95e3ebca51ea15aa87187b493 ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
net/mac80211/agg-rx.c
net/mac80211/agg-tx.c

index 4d1c335e06e57edcbbb49ca021ea717844cc281a..7f245e9f114c2909a8a8813cd4e6cc411f3178cc 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 2c08526094b302e58a21f3677d1ed952c3dcb78a..2f1f10080181bfa755e75148530013f8a16967a4 100644 (file)
@@ -590,7 +590,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))