From: Sara Sharon <[email protected]>

Typically, when not in HE mode, we will not perform well
with AMSDUs bigger than 8K.

Signed-off-by: Sara Sharon <[email protected]>
Signed-off-by: Luca Coelho <[email protected]>
---
 drivers/net/wireless/intel/iwlwifi/mvm/rs.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/rs.c 
b/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
index 09866f50857a..2d7a089d93a3 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
@@ -1757,7 +1757,12 @@ static void rs_set_amsdu_len(struct iwl_mvm *mvm, struct 
ieee80211_sta *sta,
        else
                mvmsta->amsdu_enabled = 0xFFFF;
 
-       mvmsta->max_amsdu_len = sta->max_amsdu_len;
+       if (mvmsta->vif->bss_conf.he_support &&
+           !iwlwifi_mod_params.disable_11ax)
+               mvmsta->max_amsdu_len = sta->max_amsdu_len;
+       else
+               mvmsta->max_amsdu_len = min_t(int, sta->max_amsdu_len, 8500);
+
        sta->max_rc_amsdu_len = mvmsta->max_amsdu_len;
 
        for (i = 0; i < IWL_MAX_TID_COUNT; i++) {
-- 
2.20.1

Reply via email to