linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Lippers-Hollmann <s.l-h@gmx.de>
To: Bitterblue Smith <rtl8821cerfe2@gmail.com>
Cc: "linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	Ping-Ke Shih <pkshih@realtek.com>,
	Larry Finger <Larry.Finger@lwfinger.net>,
	Christian Hewitt <chewitt@libreelec.tv>
Subject: Re: [PATCH v4 02/14] wifi: rtlwifi: rtl8192de: Fix low speed with WPA3-SAE
Date: Wed, 10 Apr 2024 06:53:08 +0200	[thread overview]
Message-ID: <20240410065308.57328623@mir> (raw)
In-Reply-To: <ed12ec17-ae6e-45fa-a72f-23e0a34654da@gmail.com>

Hi

On 2024-04-09, Bitterblue Smith wrote:
> Some (all?) management frames are incorrectly reported to mac80211 as
> decrypted when actually the hardware did not decrypt them. This results
> in speeds 3-5 times lower than expected, 20-30 Mbps instead of 100
> Mbps.
>
> Fix this by checking the encryption type field of the RX descriptor.
> rtw88 does the same thing.
>
> This fix was tested only with rtl8192du, which will use the same code.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
> ---
> v4:
>  - Patch is new in v4.

This patch indeed provides a nice speedup with WPA3/ SAE on my
rtl8192du:

v3 of the patch series:

$ iperf3 -c <remote_server_ipv6>
Connecting to host <remote_server_ipv6>, port 5201
[  5] local <local_client_ipv6> port 45806 connected to <remote_server_ipv6> port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  3.75 MBytes  31.4 Mbits/sec    0    241 KBytes
[  5]   1.00-2.00   sec  3.88 MBytes  32.5 Mbits/sec    0    411 KBytes
[  5]   2.00-3.00   sec  3.88 MBytes  32.5 Mbits/sec    0    580 KBytes
[  5]   3.00-4.00   sec  3.88 MBytes  32.5 Mbits/sec    0    720 KBytes
[  5]   4.00-5.00   sec  2.62 MBytes  22.0 Mbits/sec    0    846 KBytes
[  5]   5.00-6.00   sec  2.75 MBytes  23.1 Mbits/sec    0   1004 KBytes
[  5]   6.00-7.00   sec  2.62 MBytes  22.0 Mbits/sec    0   1.14 MBytes
[  5]   7.00-8.00   sec  2.75 MBytes  23.1 Mbits/sec    0   1.27 MBytes
[  5]   8.00-9.00   sec  2.62 MBytes  22.0 Mbits/sec    0   1.41 MBytes
[  5]   9.00-10.00  sec  2.75 MBytes  23.1 Mbits/sec    0   1.55 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  31.5 MBytes  26.4 Mbits/sec    0             sender
[  5]   0.00-10.00  sec  30.4 MBytes  25.5 Mbits/sec                  receiver

iperf Done.

$ iperf3 -c <remote_server_ipv6> --reverse
Connecting to host <remote_server_ipv6>, port 5201
Reverse mode, remote host <remote_server_ipv6> is sending
[  5] local <local_client_ipv6> port 57564 connected to <remote_server_ipv6> port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  3.25 MBytes  27.2 Mbits/sec
[  5]   1.00-2.00   sec  2.50 MBytes  21.0 Mbits/sec
[  5]   2.00-3.00   sec  2.25 MBytes  18.9 Mbits/sec
[  5]   3.00-4.00   sec  2.25 MBytes  18.9 Mbits/sec
[  5]   4.00-5.00   sec  2.88 MBytes  24.1 Mbits/sec
[  5]   5.00-6.00   sec  2.88 MBytes  24.1 Mbits/sec
[  5]   6.00-7.00   sec  2.38 MBytes  19.9 Mbits/sec
[  5]   7.00-8.00   sec  2.62 MBytes  22.0 Mbits/sec
[  5]   8.00-9.00   sec  3.00 MBytes  25.2 Mbits/sec
[  5]   9.00-10.00  sec  3.00 MBytes  25.2 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.01  sec  29.9 MBytes  25.0 Mbits/sec    0             sender
[  5]   0.00-10.00  sec  27.0 MBytes  22.6 Mbits/sec                  receiver

iperf Done.

$ iperf3 -c <remote_server_ipv6> --bidir
Connecting to host <remote_server_ipv6>, port 5201
[  5] local <local_client_ipv6> port 44242 connected to <remote_server_ipv6> port 5201
[  7] local <local_client_ipv6> port 44252 connected to <remote_server_ipv6> port 5201
[ ID][Role] Interval           Transfer     Bitrate         Retr  Cwnd
[  5][TX-C]   0.00-1.00   sec  2.00 MBytes  16.8 Mbits/sec    0    109 KBytes
[  7][RX-C]   0.00-1.00   sec  1.00 MBytes  8.38 Mbits/sec
[  5][TX-C]   1.00-2.00   sec  2.75 MBytes  23.1 Mbits/sec    0    212 KBytes
[  7][RX-C]   1.00-2.00   sec   640 KBytes  5.24 Mbits/sec
[  5][TX-C]   2.00-3.00   sec  2.25 MBytes  18.9 Mbits/sec    0    315 KBytes
[  7][RX-C]   2.00-3.00   sec   640 KBytes  5.24 Mbits/sec
[  5][TX-C]   3.00-4.00   sec  3.12 MBytes  26.2 Mbits/sec    0    421 KBytes
[  7][RX-C]   3.00-4.00   sec   512 KBytes  4.19 Mbits/sec
[  5][TX-C]   4.00-5.00   sec  4.00 MBytes  33.6 Mbits/sec    0    551 KBytes
[  7][RX-C]   4.00-5.00   sec   640 KBytes  5.24 Mbits/sec
[  5][TX-C]   5.00-6.00   sec  2.50 MBytes  21.0 Mbits/sec    0    676 KBytes
[  7][RX-C]   5.00-6.00   sec   384 KBytes  3.15 Mbits/sec
[  5][TX-C]   6.00-7.00   sec  2.75 MBytes  23.1 Mbits/sec    0    802 KBytes
[  7][RX-C]   6.00-7.00   sec   384 KBytes  3.15 Mbits/sec
[  5][TX-C]   7.00-8.00   sec  2.62 MBytes  22.0 Mbits/sec    0    925 KBytes
[  7][RX-C]   7.00-8.00   sec   256 KBytes  2.10 Mbits/sec
[  5][TX-C]   8.00-9.00   sec  2.75 MBytes  23.1 Mbits/sec    0   1.05 MBytes
[  7][RX-C]   8.00-9.00   sec   512 KBytes  4.19 Mbits/sec
[  5][TX-C]   9.00-10.00  sec  2.62 MBytes  22.0 Mbits/sec    0   1.19 MBytes
[  7][RX-C]   9.00-10.00  sec   256 KBytes  2.10 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID][Role] Interval           Transfer     Bitrate         Retr
[  5][TX-C]   0.00-10.00  sec  27.4 MBytes  23.0 Mbits/sec    0             sender
[  5][TX-C]   0.00-10.00  sec  25.4 MBytes  21.3 Mbits/sec                  receiver
[  7][RX-C]   0.00-10.00  sec  6.12 MBytes  5.14 Mbits/sec    1             sender
[  7][RX-C]   0.00-10.00  sec  5.12 MBytes  4.30 Mbits/sec                  receiver

iperf Done.

***********************************************************************

v4 of the patch series:

$ iperf3 -c <remote_server_ipv6>
Connecting to host <remote_server_ipv6>, port 5201
[  5] local <local_client_ipv6> port 60528 connected to <remote_server_ipv6> port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  13.1 MBytes   110 Mbits/sec    0    445 KBytes
[  5]   1.00-2.00   sec  13.2 MBytes   111 Mbits/sec    0    644 KBytes
[  5]   2.00-3.00   sec  11.9 MBytes  99.6 Mbits/sec    0    768 KBytes
[  5]   3.00-4.00   sec  11.5 MBytes  96.5 Mbits/sec    0    855 KBytes
[  5]   4.00-5.00   sec  12.0 MBytes   101 Mbits/sec    0    945 KBytes
[  5]   5.00-6.00   sec  11.4 MBytes  95.5 Mbits/sec    0    945 KBytes
[  5]   6.00-7.00   sec  11.6 MBytes  97.5 Mbits/sec    0    945 KBytes
[  5]   7.00-8.00   sec  11.2 MBytes  94.4 Mbits/sec    0    945 KBytes
[  5]   8.00-9.00   sec  13.0 MBytes   109 Mbits/sec    0    945 KBytes
[  5]   9.00-10.00  sec  12.0 MBytes   101 Mbits/sec    0   1000 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   121 MBytes   101 Mbits/sec    0             sender
[  5]   0.00-10.03  sec   118 MBytes  98.3 Mbits/sec                  receiver

iperf Done.

$ iperf3 -c <remote_server_ipv6> --reverse
Connecting to host <remote_server_ipv6>, port 5201
Reverse mode, remote host <remote_server_ipv6> is sending
[  5] local <local_client_ipv6> port 59562 connected to <remote_server_ipv6> port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  16.0 MBytes   134 Mbits/sec
[  5]   1.00-2.00   sec  14.9 MBytes   125 Mbits/sec
[  5]   2.00-3.00   sec  19.2 MBytes   162 Mbits/sec
[  5]   3.00-4.00   sec  14.9 MBytes   125 Mbits/sec
[  5]   4.00-5.00   sec  18.2 MBytes   153 Mbits/sec
[  5]   5.00-6.00   sec  18.9 MBytes   158 Mbits/sec
[  5]   6.00-7.00   sec  17.8 MBytes   149 Mbits/sec
[  5]   7.00-8.00   sec  17.5 MBytes   147 Mbits/sec
[  5]   8.00-9.00   sec  15.1 MBytes   127 Mbits/sec
[  5]   9.00-10.00  sec  14.8 MBytes   124 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.01  sec   171 MBytes   144 Mbits/sec    1             sender
[  5]   0.00-10.00  sec   167 MBytes   140 Mbits/sec                  receiver

iperf Done

$ iperf3 -c <remote_server_ipv6> --bidir
Connecting to host <remote_server_ipv6>, port 5201
[  5] local <local_client_ipv6> port 34312 connected to <remote_server_ipv6> port 5201
[  7] local <local_client_ipv6> port 34318 connected to <remote_server_ipv6> port 5201
[ ID][Role] Interval           Transfer     Bitrate         Retr  Cwnd
[  5][TX-C]   0.00-1.00   sec  8.25 MBytes  69.1 Mbits/sec    0    395 KBytes
[  7][RX-C]   0.00-1.00   sec  7.00 MBytes  58.7 Mbits/sec
[  5][TX-C]   1.00-2.00   sec  3.38 MBytes  28.3 Mbits/sec    0    420 KBytes
[  7][RX-C]   1.00-2.00   sec  14.6 MBytes   123 Mbits/sec
[  5][TX-C]   2.00-3.00   sec  2.88 MBytes  24.1 Mbits/sec    0    473 KBytes
[  7][RX-C]   2.00-3.00   sec  15.4 MBytes   129 Mbits/sec
[  5][TX-C]   3.00-4.00   sec  1.12 MBytes  9.44 Mbits/sec    0    531 KBytes
[  7][RX-C]   3.00-4.00   sec  10.9 MBytes  91.2 Mbits/sec
[  5][TX-C]   4.00-5.00   sec  1.12 MBytes  9.44 Mbits/sec    0    558 KBytes
[  7][RX-C]   4.00-5.00   sec  10.8 MBytes  90.2 Mbits/sec
[  5][TX-C]   5.00-6.00   sec  1.38 MBytes  11.5 Mbits/sec    0    600 KBytes
[  7][RX-C]   5.00-6.00   sec  3.62 MBytes  30.4 Mbits/sec
[  5][TX-C]   6.00-7.00   sec  2.75 MBytes  23.1 Mbits/sec    0    718 KBytes
[  7][RX-C]   6.00-7.00   sec  12.2 MBytes   103 Mbits/sec
[  5][TX-C]   7.00-8.00   sec  2.75 MBytes  23.1 Mbits/sec    0    853 KBytes
[  7][RX-C]   7.00-8.00   sec  11.1 MBytes  93.3 Mbits/sec
[  5][TX-C]   8.00-9.00   sec  2.75 MBytes  23.1 Mbits/sec    0   1.03 MBytes
[  7][RX-C]   8.00-9.00   sec  13.6 MBytes   114 Mbits/sec
[  5][TX-C]   9.00-10.00  sec  4.12 MBytes  34.6 Mbits/sec    0   1.12 MBytes
[  7][RX-C]   9.00-10.00  sec  16.6 MBytes   139 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID][Role] Interval           Transfer     Bitrate         Retr
[  5][TX-C]   0.00-10.00  sec  30.5 MBytes  25.6 Mbits/sec    0             sender
[  5][TX-C]   0.00-10.04  sec  27.1 MBytes  22.7 Mbits/sec                  receiver
[  7][RX-C]   0.00-10.00  sec   119 MBytes  99.7 Mbits/sec   10             sender
[  7][RX-C]   0.00-10.04  sec   116 MBytes  96.8 Mbits/sec                  receiver

iperf Done.


Regards
	Stefan Lippers-Hollmann

  reply	other threads:[~2024-04-10  4:53 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-09 19:39 [PATCH v4 00/14] wifi: rtlwifi: Add new rtl8192du driver Bitterblue Smith
2024-04-09 19:46 ` [PATCH v4 01/14] wifi: rtlwifi: rtl8192de: Fix 5 GHz TX power Bitterblue Smith
2024-04-12  2:58   ` Ping-Ke Shih
2024-04-09 19:52 ` [PATCH v4 02/14] wifi: rtlwifi: rtl8192de: Fix low speed with WPA3-SAE Bitterblue Smith
2024-04-10  4:53   ` Stefan Lippers-Hollmann [this message]
2024-04-12  6:14   ` Ping-Ke Shih
2024-04-09 19:53 ` [PATCH v4 03/14] wifi: rtlwifi: Move code from rtl8192de to rtl8192d-common Bitterblue Smith
2024-04-12  8:22   ` Ping-Ke Shih
2024-04-14 18:46     ` Bitterblue Smith
2024-04-15  1:29       ` Ping-Ke Shih
2024-04-09 19:54 ` [PATCH v4 04/14] wifi: rtlwifi: Adjust rtl8192d-common for USB Bitterblue Smith
2024-04-09 19:54 ` [PATCH v4 05/14] wifi: rtlwifi: Add rtl8192du/table.{c,h} Bitterblue Smith
2024-04-09 19:56 ` [PATCH v4 06/14] wifi: rtlwifi: Add rtl8192du/hw.{c,h} Bitterblue Smith
2024-04-09 19:57 ` [PATCH v4 07/14] wifi: rtlwifi: Add rtl8192du/phy.{c,h} Bitterblue Smith
2024-04-09 19:57 ` [PATCH v4 08/14] wifi: rtlwifi: Add rtl8192du/trx.{c,h} Bitterblue Smith
2024-04-09 19:58 ` [PATCH v4 09/14] wifi: rtlwifi: Add rtl8192du/rf.{c,h} Bitterblue Smith
2024-04-09 19:58 ` [PATCH v4 10/14] wifi: rtlwifi: Add rtl8192du/fw.{c,h} and rtl8192du/led.{c,h} Bitterblue Smith
2024-04-09 19:59 ` [PATCH v4 11/14] wifi: rtlwifi: Add rtl8192du/dm.{c,h} Bitterblue Smith
2024-04-09 20:00 ` [PATCH v4 12/14] wifi: rtlwifi: Constify rtl_hal_cfg.{ops,usb_interface_cfg} and rtl_priv.cfg Bitterblue Smith
2024-04-09 20:01 ` [PATCH v4 13/14] wifi: rtlwifi: Add rtl8192du/sw.{c,h} Bitterblue Smith
2024-04-09 20:02 ` [PATCH v4 14/14] wifi: rtlwifi: Enable the new rtl8192du driver Bitterblue Smith

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240410065308.57328623@mir \
    --to=s.l-h@gmx.de \
    --cc=Larry.Finger@lwfinger.net \
    --cc=chewitt@libreelec.tv \
    --cc=linux-wireless@vger.kernel.org \
    --cc=pkshih@realtek.com \
    --cc=rtl8821cerfe2@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).