linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Larry Finger <Larry.Finger@lwfinger.net>
To: "Rui Salvaterra" <rsalvaterra@gmail.com>, "Michael Büsch" <m@bues.ch>
Cc: linux-wireless@vger.kernel.org, b43-dev@lists.infradead.org
Subject: Re: [BUG?] b43: can't connect to WPA3 network (nohwcrypt=1)
Date: Thu, 21 May 2020 13:59:57 -0500	[thread overview]
Message-ID: <2b22b778-2f89-9c42-93a0-5c165de26f35@lwfinger.net> (raw)
In-Reply-To: <CALjTZvY3_wjAx9DOEgYxpc4_fG-HWh_=O7veFxeEoygPzTJptw@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 884 bytes --]

On 5/21/20 11:17 AM, Rui Salvaterra wrote:
> Hi, guys,
> 
> On Thu, 21 May 2020 at 15:52, Rui Salvaterra <rsalvaterra@gmail.com> wrote:
>>
>> It's not exactly a modern Wi-Fi card either, and being 802.11g might
>> actually help limiting the CPU overhead.
> 
> Yeah, as I expected, it's neither great nor terrible. I fired up iperf
> to do some quick and dirty testing: with WPA2 (hardware crypto) I get
> around 13 % CPU, with WPA3 (software crypto), around 34 %. The
> throughput is pretty much the same.

I did only a rough test, but turning off hardware encryption increased the b43 
interrupt routine from a maximum of 10% of a cpu to about 20%. Even on a fast 
cpu, it seems that hw encryption should be used if possible.

I have one additional test for you. With the attached patch, do you get the 
message that software crypto is required? It should appear only once.


Larry


[-- Attachment #2: b43_crypto.patch --]
[-- Type: text/x-patch, Size: 1436 bytes --]

diff --git a/drivers/net/wireless/broadcom/b43/main.c b/drivers/net/wireless/broadcom/b43/main.c
index 39da1a4c30ac..c5322f52040c 100644
--- a/drivers/net/wireless/broadcom/b43/main.c
+++ b/drivers/net/wireless/broadcom/b43/main.c
@@ -4161,6 +4161,7 @@ static int b43_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	u8 index;
 	int err;
 	static const u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
+	static int encrypt_warn;
 
 	if (modparam_nohwcrypt)
 		return -ENOSPC; /* User disabled HW-crypto */
@@ -4189,6 +4190,10 @@ static int b43_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	if (dev->fw.pcm_request_failed || !dev->hwcrypto_enabled) {
 		/* We don't have firmware for the crypto engine.
 		 * Must use software-crypto. */
+		if (encrypt_warn++) {
+			b43info(wl, "***** A cipher used by this connection requires using software encryption\n");
+			b43info(wl, "***** Reload b43 with modules option 'nohwcrypt=1'\n");
+		}
 		err = -EOPNOTSUPP;
 		goto out_unlock;
 	}
@@ -5569,7 +5574,9 @@ static struct b43_wl *b43_wireless_init(struct b43_bus_dev *dev)
 	/* fill hw info */
 	ieee80211_hw_set(hw, RX_INCLUDES_FCS);
 	ieee80211_hw_set(hw, SIGNAL_DBM);
-
+	/* if hardware encryption is disabled, enable MFP (and WPA3) */
+	if (modparam_nohwcrypt)
+		ieee80211_hw_set(hw, MFP_CAPABLE);
 	hw->wiphy->interface_modes =
 		BIT(NL80211_IFTYPE_AP) |
 		BIT(NL80211_IFTYPE_MESH_POINT) |

  reply	other threads:[~2020-05-21 19:00 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-19 14:18 [BUG?] b43: can't connect to WPA3 network (nohwcrypt=1) Rui Salvaterra
2020-05-19 20:30 ` Larry Finger
2020-05-19 20:36   ` Rui Salvaterra
2020-05-19 23:13     ` Rui Salvaterra
2020-05-20  0:16       ` Larry Finger
2020-05-20  8:24         ` Rui Salvaterra
2020-05-20 10:55           ` Rui Salvaterra
2020-05-20 20:08             ` Larry Finger
2020-05-20 20:28               ` Rui Salvaterra
2020-05-20 20:56                 ` Larry Finger
2020-05-21  8:35                   ` Rui Salvaterra
2020-05-21  9:07                     ` Rui Salvaterra
2020-05-21 10:46                       ` Michael Büsch
2020-05-21 11:30                         ` Rui Salvaterra
2020-05-21 11:40                           ` Michael Büsch
2020-05-21 14:10                             ` Larry Finger
2020-05-21 14:52                             ` Rui Salvaterra
2020-05-21 16:17                               ` Rui Salvaterra
2020-05-21 18:59                                 ` Larry Finger [this message]
2020-05-21 19:19                                   ` Rui Salvaterra
2020-05-21 20:23                                     ` Rui Salvaterra
2020-05-21 21:47                                       ` Larry Finger
2020-05-22 10:19                                         ` Michael Büsch
2020-05-22 11:49                                           ` Kalle Valo
2020-05-22 13:46                                             ` Rui Salvaterra
2020-05-22 18:02                                               ` Larry Finger
2020-05-22 20:04                                                 ` Rui Salvaterra
2020-05-22 20:40                                                 ` Rui Salvaterra
2020-05-22 21:06                                                   ` Larry Finger
2020-05-23  0:35                                                     ` Rui Salvaterra
2020-05-23 21:17                                                     ` Rafał Miłecki
2020-05-25  6:56                                                       ` Kalle Valo
2020-05-22 17:15                                             ` Larry Finger

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=2b22b778-2f89-9c42-93a0-5c165de26f35@lwfinger.net \
    --to=larry.finger@lwfinger.net \
    --cc=b43-dev@lists.infradead.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=m@bues.ch \
    --cc=rsalvaterra@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).