Re: [PATCH] rsi: Fix TX EAPOL packet handling against iwlwifi AP
From: Martin Fuzzey <hidden>
Date: 2021-05-27 16:52:39
Also in:
netdev
Hi Marek, I've just run into the same problem (on -5.4) and found your (now merged) patch On 15/10/2020 13:16, Marek Vasut wrote:
In case RSI9116 SDIO WiFi operates in STA mode against Intel 9260 in AP mode, the association fails. The former is using wpa_supplicant during association, the later is set up using hostapd: iwl$ cat hostapd.conf interface=wlp1s0 ssid=test country_code=DE hw_mode=g channel=1 wpa=2 wpa_passphrase=test wpa_key_mgmt=WPA-PSK iwl$ hostapd -d hostapd.conf rsi$ wpa_supplicant -i wlan0 -c <(wpa_passphrase test test) The problem is that the TX EAPOL data descriptor RSI_DESC_REQUIRE_CFM_TO_HOST flag and extended descriptor EAPOL4_CONFIRM frame type are not set in case the AP is iwlwifi, because in that case the TX EAPOL packet is 2 bytes shorter. The downstream vendor driver has this change in place already [1], however there is no explanation for it, neither is there any commit history from which such explanation could be obtained.
I get this using 2 RSI9116 s, for both AP and STA using hostapd. Comparing packet captures in the working and non working (without your patch) case shows that the working case has a 802.11 QOS header whereas the non working case does not, hence the 2 byte difference. The size of the EAPOL data is the same, it's the previous header that causes the problem... This whole use the message size to determine the messages to ACK seems very fragile... Regards, Martin