Sometimes Intel AX201 fails to associate with AP:
[  839.290042] wlp0s20f3: authenticate with xx:xx:xx:xx:xx:xx
[  839.291737] wlp0s20f3: send auth to xx:xx:xx:xx:xx:xx (try 1/3)
[  839.350010] wlp0s20f3: send auth to xx:xx:xx:xx:xx:xx (try 2/3)
[  839.360826] wlp0s20f3: authenticated
[  839.363205] wlp0s20f3: associate with xx:xx:xx:xx:xx:xx (try 1/3)
[  839.370342] wlp0s20f3: RX AssocResp from xx:xx:xx:xx:xx:xx (capab=0x431 
status=0 aid=12)
[  839.378925] wlp0s20f3: associated
[  839.431788] wlp0s20f3: deauthenticated from xx:xx:xx:xx:xx:xx (Reason: 
2=PREV_AUTH_NOT_VALID)

It fails because EAPOL hasn't finished. Increase the  session protection
duration to 1200TU can eliminate the problem.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=209237
Signed-off-by: Kai-Heng Feng <kai.heng.f...@canonical.com>
---
 drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c 
b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
index 9374c85c5caf..54acd9a68955 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
@@ -3297,13 +3297,13 @@ static void iwl_mvm_mac_mgd_prepare_tx(struct 
ieee80211_hw *hw,
         * session for a much longer time since the firmware will internally
         * create two events: a 300TU one with a very high priority that
         * won't be fragmented which should be enough for 99% of the cases,
-        * and another one (which we configure here to be 900TU long) which
+        * and another one (which we configure here to be 1200TU long) which
         * will have a slightly lower priority, but more importantly, can be
         * fragmented so that it'll allow other activities to run.
         */
        if (fw_has_capa(&mvm->fw->ucode_capa,
                        IWL_UCODE_TLV_CAPA_SESSION_PROT_CMD))
-               iwl_mvm_schedule_session_protection(mvm, vif, 900,
+               iwl_mvm_schedule_session_protection(mvm, vif, 1200,
                                                    min_duration, false);
        else
                iwl_mvm_protect_session(mvm, vif, duration,
-- 
2.17.1

Reply via email to