Search Linux Wireless

Re: [PATCH] wifi: rtw88: process VO packets without workqueue to avoid PTK rekey failed

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ping-Ke Shih <pkshih@xxxxxxxxxxx> wrote:

> From: Chih-Kang Chang <gary.chang@xxxxxxxxxxx>
> 
> In the wpa_supplicant rekey flow, it sends an EAPOL packet 4/4 through
> nl80211_tx_control_port() and triggers wake_tx_queue() in the driver.
> Then, it sends nl80211_new_key() to configure a new key in mac80211.
> However, in wake_tx_queue(), a workqueue is used to process the tx packet,
> which might cause the driver to process the EAPOL packet later than
> nl80211_new_key(). As a result, the EAPOL 4/4 packet is dropped by mac80211
> due to the rekey configuration being finished. The EAPOL packets belongs to
> VO packets that need high priority. Therefore, we process VO packets
> directly without workqueue to ensure that packets can process immediately.
> 
> VO is normally used by voice application that is low traffic load and low
> latency, that doesn't affect user experience.
> We test iperf with VO packets(iperf3 -P4 -u -b 10000M -S 0xdf)
>                           before       after
> TX throughput             162M         162M
> ping RTT                  3.8ms        3.7ms
> 
> Signed-off-by: Chih-Kang Chang <gary.chang@xxxxxxxxxxx>
> Signed-off-by: Ping-Ke Shih <pkshih@xxxxxxxxxxx>

Patch applied to wireless-next.git, thanks.

67d7f24b194e wifi: rtw88: process VO packets without workqueue to avoid PTK rekey failed

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/20230616031713.16769-1-pkshih@xxxxxxxxxxx/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux