Received: by 2002:a05:7412:2a8a:b0:fc:a2b0:25d7 with SMTP id u10csp596555rdh; Wed, 7 Feb 2024 14:07:45 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCVxafRrO6OVmRd/4Iq9TckW8HCUgS4WcqcuZmBVtJM4fgREc/CEzQIYIjbFte/xt0IK5lx4hdxjBpxV/+28i9P4e23+8y28UpYnBdq23A== X-Google-Smtp-Source: AGHT+IGRBXJwIoEUGei/Q2SgTmhVH1Ht6fvMgSSExysLDoTE2LYT2IkpEP3rvAiE4rnsotKHztw8 X-Received: by 2002:a9d:5615:0:b0:6e1:d8c:8f8b with SMTP id e21-20020a9d5615000000b006e10d8c8f8bmr7036354oti.37.1707343665524; Wed, 07 Feb 2024 14:07:45 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707343665; cv=pass; d=google.com; s=arc-20160816; b=it6aGNbIEizajohwxIJbLTT1BbJQdutxZ/15hyeNjI6vXh2Q7hBdCd8BU90dx2A/xR C+HqRJ+OYcCDMwvLnXDAkXXCK9CUNQeuiVtWRGCgtpk+3BMpKdvj2Jgj4hv5S0YZXmfw 4z86VDv16A0fdFHQYDN0buc2L2NIRhuW2d6ywF/pgWmjwa9FJx5sy7RBxKdFP2ZrOTpW DIIPLwn4YAFweXXDDSERNZtw4+yMDG9QRbYWhi5SsS0RyrnauZpvu49okDpgbhTlTjCm I+IJErDpgQzaRXRNr18OmHjzhTFywI/iDUytRkAEvitY2Z2drcAyW7+pg+8ze8tBJ3Wk WSog== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:date:message-id:feedback-id :dkim-signature:dkim-signature; bh=Vilm1ec4KJ+cVj/DgCBF0t8G880tQw9jQT+O9WGH1A0=; fh=k6srXpnUIxnrWOQvYS4/6WTC+nAf7e9662NsbHA2xho=; b=MSZPyKhULJ/CDbavX2gArKCGA/bVyFXn7hBaAnZTa3LN6fqeYSDgOpBUE+9cVn4Or2 /7Gj5tWjtooIRiJ0N5nQ0tbTd5KpyERhuWfAn4wFacY0+q42yDGxLZvYRPutl+iPFqd4 YltKQxpqvqGAobMCHRyCGgrgkHUrUDCBHbvHwqGxfoa56iVnYbkhY3P5Je7v9Eq1jEho m6HVnX0ZAJ5Iezp62RwRv6SfVYT7VxrGjC/Q6WLJa5WKOeo0N5lKcfn9pANbq0LKtMAP 5qAWK+hqcPy8pUsioh3dNY20A9YhMwcNDwDPhD/LsyRAeDXgum48t8Lelek9xzLZFle0 StoQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@beims.me header.s=fm3 header.b=T72Bcz8g; dkim=pass header.i=@messagingengine.com header.s=fm3 header.b=ZvrIiZoW; arc=pass (i=1 spf=pass spfdomain=beims.me dkim=pass dkdomain=beims.me dkim=pass dkdomain=messagingengine.com dmarc=pass fromdomain=beims.me); spf=pass (google.com: domain of linux-wireless+bounces-3310-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-wireless+bounces-3310-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=beims.me X-Forwarded-Encrypted: i=2; AJvYcCWSiYwZIFQih5jdorsJzn1GmlxJe+PHoAzSsvn7F96uQtTTzbsrY9Go5dted848iv8W5aFj+IZv67/fjGgK1KHIJuq6zN4+rUUrcQIqfg== Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id bn4-20020a056a02030400b005d8c18c7c65si2460694pgb.671.2024.02.07.14.07.45 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Feb 2024 14:07:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-wireless+bounces-3310-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@beims.me header.s=fm3 header.b=T72Bcz8g; dkim=pass header.i=@messagingengine.com header.s=fm3 header.b=ZvrIiZoW; arc=pass (i=1 spf=pass spfdomain=beims.me dkim=pass dkdomain=beims.me dkim=pass dkdomain=messagingengine.com dmarc=pass fromdomain=beims.me); spf=pass (google.com: domain of linux-wireless+bounces-3310-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-wireless+bounces-3310-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=beims.me Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id E28BB287DA3 for ; Wed, 7 Feb 2024 22:07:44 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id BDF0B1D697; Wed, 7 Feb 2024 21:30:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=beims.me header.i=@beims.me header.b="T72Bcz8g"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="ZvrIiZoW" X-Original-To: linux-wireless@vger.kernel.org Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C64F5823B8; Wed, 7 Feb 2024 21:30:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=66.111.4.26 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707341413; cv=none; b=dJGTj30RDf7BmzYxkI9EPhxSDssXzmzWkBuKDQRjvYldxDWE2BGhMk2Y5cydHZh+mE4rTSL+sLPJQ8hzov6bjLV9UdittUpE6mMVnxKqolZNPIGks+iG0frwT2qZnfwlgxiBNIZ0IgWR+sqPDFsVHeeehBe1BFRTKfixa8U9J9k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707341413; c=relaxed/simple; bh=g0gLIVsTVlzEVgXEZE5VyWYUAXSY6iiynaTgHHjaG2A=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=mdZZ0x6sZ6m98ZbnDHbzj0I8/ct8jEGT5DYLc4QKnVzM9z290RaAVqZful4K8HqhlJFMoruheBeykl5oyPEF2Avr6lqqjA+83dvb0/s5GLRB3BSUMSco/j5VSLiXdoXxoFB/8nXjWwwf1jBAnH6swPF3zY6olIhfuy9loURAFa8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=beims.me; spf=pass smtp.mailfrom=beims.me; dkim=pass (2048-bit key) header.d=beims.me header.i=@beims.me header.b=T72Bcz8g; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=ZvrIiZoW; arc=none smtp.client-ip=66.111.4.26 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=beims.me Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=beims.me Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 9EF555C00C6; Wed, 7 Feb 2024 16:30:08 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Wed, 07 Feb 2024 16:30:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=beims.me; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1707341408; x=1707427808; bh=Vilm1ec4KJ+cVj/DgCBF0t8G880tQw9jQT+O9WGH1A0=; b= T72Bcz8gyrFrOLWjwX11/7ujKoPMWZQvm2oyQ/7El/MmrBVn8sodwkYXlUg5KU02 bs6zMbLuiTWy3LRQ3Gjl2xALYSK/REGtqbZMY96endXINadRuliXIjKHrtH1whhn 58QgxHHfKqZQIer8e2K9pq0go4erqAYhGTzGoR42E5/fVUIGcM9pRe9Xuj8MpZtW Iy2Yi+Mj9XR7htpZxnlE30+VzolEKNwUaYUkwXmX6g/Jgjhx3mYA2fxPObjb2jSH zOa2buUnr2LZ6WF2oW6+cY04ZNeHDiDuq+Y3hGUaG2xz5Fa9LBDh4UbSJJfSj4vx A5Na8jZfocv1FhByzhBKfg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1707341408; x= 1707427808; bh=Vilm1ec4KJ+cVj/DgCBF0t8G880tQw9jQT+O9WGH1A0=; b=Z vrIiZoWEyRe4Ac3TP+/yEzsdIdC9IxSmc1I+EtMixQKv5o7chm6NQv3yQmsS/z4J csb7UJB626+AeBcg5FaSJxqc4d7Fw9qDVpKb7aq6w/ite0IBRqM1K0g5ek2QG4TL Ep/Slge7Ws/DxLmt1ppaFtxata6sC+XlkRQYcYZVg7nmv5av3JLGZS+cYddTQ2oW jo5HkBOmlg1fIVUsMUXYSBk88bfZj4D2KeFDfFnRfPs6OvxYb9InnxcM4XLP15W7 Zhq9LOoSAOxMEzcj7cQI+sCRH8X+3YFMm7Csxg/ErxXN7RJg0zlv7bbREt5jkCD7 cH7qetKzzAzmhL9TvGLpQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrtddvgddugeejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtvdejnecuhfhrohhmpeftrghf rggvlhcuuegvihhmshcuoehrrghfrggvlhessggvihhmshdrmhgvqeenucggtffrrghtth gvrhhnpedutdfgjeeitddtkedthffhvdevteefgedutdefhfelueeiledviefhffefudel ffenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehrrg hfrggvlhessggvihhmshdrmhgv X-ME-Proxy: Feedback-ID: idc214666:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 7 Feb 2024 16:30:06 -0500 (EST) Message-ID: <48364f66-99b4-40ca-b4b2-4adf1071960f@beims.me> Date: Wed, 7 Feb 2024 18:30:03 -0300 Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [EXT] Re: [PATCH v8 0/2] wifi: mwifiex: add code to support host mlme Content-Language: pt-BR To: David Lin , "linux-wireless@vger.kernel.org" Cc: "linux-kernel@vger.kernel.org" , "briannorris@chromium.org" , "kvalo@kernel.org" , "francesco@dolcini.it" , Pete Hsieh References: <20231222032123.1036277-1-yu-hao.lin@nxp.com> <97bb3869-3b82-4b64-87cd-9b63d4516649@beims.me> From: Rafael Beims In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 30/01/2024 04:19, David Lin wrote: >> From: Rafael Beims >> Sent: Friday, January 19, 2024 1:09 AM >> To: David Lin ; linux-wireless@vger.kernel.org >> Cc: linux-kernel@vger.kernel.org; briannorris@chromium.org; >> kvalo@kernel.org; francesco@dolcini.it; Pete Hsieh >> >> Subject: [EXT] Re: [PATCH v8 0/2] wifi: mwifiex: add code to support host mlme >> >> Caution: This is an external email. Please take care when clicking links or >> opening attachments. When in doubt, report the message using the 'Report >> this email' button >> >> >> On 22/12/2023 00:21, David Lin wrote: >> >>> This series add host based MLME support to the mwifiex driver, this >>> enables WPA3 support in both client and AP mode. >>> To enable WPA3, a firmware with corresponding V2 Key API support is >>> required. >>> The feature is currently only enabled on NXP IW416 (SD8978), and it >>> was internally validated by the NXP QA team. Other NXP Wi-Fi chips >>> supported in current mwifiex are not affected by this change. >>> >>> v8: >>> - Separate 6/12 from patch v7. >>> As it's a bug fix not part of host MLME feature. >>> - Rearrnage MLME feature into 2 patches: >>> a. Add host based MLME support for STA mode. >>> b. Add host based MLME support for AP mode. >>> >>> v7: >>> - Fix regression: Downlink throughput degraded by 70% in AP mode. >>> - Fix issue: On STAUT, kernel Oops occurs when there is no association >>> response from AP. >>> - Fix issue: On STAUT, if AP leaves abruptly and deauth is missing, >>> STA can't connect to AP anymore. >>> - Fix regression: STA can't connect to AP when host_mlme is disabled >>> (impact all chips). >>> - Address reviewer comments. >>> >>> v6: >>> - Correct mailing sequence. >>> >>> v5: >>> - Add host base MLME support to enable WPA3 functionalities for both >>> STA and AP mode. >>> - This feature (WPA3) required a firmware with corresponding Key API >> V2 >>> support. >>> - QA validation and regression have been covered for IW416. >>> - This feature (WPA3) is currently enabled and verified only for IW416. >>> - Changelogs since patch V4: >>> a. Add WPA3 support for AP mode. >>> b. Bug fix: In WPA3 STA mode, deice gets disconnected from AP >>> when group rekey occurs. >>> c. Bug fix: STAUT doesn't send WMM IE in association request when >>> associate to a WMM-AP. >>> >>> v4: >>> - Refine code segment per review comment. >>> - Add API to check firmware encryption key command version when >>> host_mlme is enabled. >>> >>> v3: >>> - Cleanup commit message. >>> >>> v2: >>> - Fix checkpatch error (pwe[1] -> pwe[0]). >>> - Move module parameter 'host_mlme' to mwifiex_sdio_device >> structure. >>> Default only enable for IW416. >>> - Disable advertising NL80211_FEATURE_SAE if host_mlme is not >> enabled. >>> David Lin (2): >>> wifi: mwifiex: add host mlme for client mode >>> wifi: mwifiex: add host mlme for AP mode >>> >>> .../net/wireless/marvell/mwifiex/cfg80211.c | 394 >> +++++++++++++++++- >>> drivers/net/wireless/marvell/mwifiex/cmdevt.c | 27 ++ >>> drivers/net/wireless/marvell/mwifiex/decl.h | 22 + >>> drivers/net/wireless/marvell/mwifiex/fw.h | 54 +++ >>> drivers/net/wireless/marvell/mwifiex/init.c | 6 + >>> drivers/net/wireless/marvell/mwifiex/ioctl.h | 5 + >>> drivers/net/wireless/marvell/mwifiex/join.c | 66 ++- >>> drivers/net/wireless/marvell/mwifiex/main.c | 54 +++ >>> drivers/net/wireless/marvell/mwifiex/main.h | 17 + >>> drivers/net/wireless/marvell/mwifiex/scan.c | 6 + >>> drivers/net/wireless/marvell/mwifiex/sdio.c | 13 + >>> drivers/net/wireless/marvell/mwifiex/sdio.h | 2 + >>> .../wireless/marvell/mwifiex/sta_cmdresp.c | 2 + >>> .../net/wireless/marvell/mwifiex/sta_event.c | 36 +- >>> .../net/wireless/marvell/mwifiex/sta_ioctl.c | 3 +- >>> drivers/net/wireless/marvell/mwifiex/sta_tx.c | 9 +- >>> .../net/wireless/marvell/mwifiex/uap_cmd.c | 171 ++++++++ >>> drivers/net/wireless/marvell/mwifiex/util.c | 104 +++++ >>> 18 files changed, 974 insertions(+), 17 deletions(-) >>> >>> >>> base-commit: 783004b6dbda2cfe9a552a4cc9c1d168a2068f6c >> I applied the two commits of this series on top of v6.7 but unfortunately the AP >> is failing to start with the patches. I get this output from "hostapd -d" (running >> on a Verdin AM62 with IW416): >> >> nl80211: kernel reports: Match already configured >> nl80211: Register frame command failed (type=176): ret=-114 (Operation >> already in progress) >> nl80211: Register frame match - hexdump(len=0): [NULL] >> >> If I run the same hostapd on v6.7 without the patches, the AP is started with no >> issues. >> >> >> Is there anything else that should be done in order to test this? >> >> >> Rafael > I applied patch v8 (mbox from patch work) to Linux stable repository (tag v6.7.2). > > Both client and AP mode can work with and without WPA3. > > David > I went back and executed the tests again. I re-applied the pach on top of tag v6.7.2 to make sure we're seeing exactly the same thing. At first, the behavior I was seeing was exactly the same I reported before. Upon starting hostapd with our basic example configuration, it would fail to start the AP with the error: nl80211: kernel reports: Match already configured nl80211: Could not configure driver mode After some investigation of what could cause this error, I found out that it was connman that was interfering with this somehow. After killing the connman service, the AP would start correctly. I want to point out that this behavior is different from the unpatched driver. With that one we don't need to kill connman in order to start the AP with hostapd. After seeing the AP starting up, I did a quick series of tests (Toradex Verdin AM62 with 1GB of RAM and two antennas connected via SMA adapter): 1) AP test: I was able to use the simple AP configuration with two clients connected simultaneously. I executed simple ping tests and also a quick run of iperf3 with the following results [ ID] Interval           Transfer     Bitrate         Retr [  5]   0.00-10.00  sec  16.8 MBytes  14.1 Mbits/sec 11             sender [  5]   0.00-10.05  sec  16.4 MBytes  13.7 Mbits/sec                  receiver I repeated the same iperf3 test several times with similar results. Comparing the iperf3 results with what I get on the unpatched driver (v6.7.2), there seems to be a difference in average bandwidth: [ ID] Interval           Transfer     Bitrate         Retr [  5]   0.00-10.00  sec  20.2 MBytes  17.0 Mbits/sec 0             sender [  5]   0.00-10.04  sec  19.7 MBytes  16.4 Mbits/sec                  receiver 2) Client test: I also executed a similar test but now with the AM62 as the client. It was possible to connect to an AP and do the ping tests without problems. The iperf3 results are in line with what we see on the AP: [ ID] Interval           Transfer     Bitrate         Retr [  5]   0.00-10.00  sec  19.3 MBytes  16.2 Mbits/sec 32             sender [  5]   0.00-10.01  sec  19.0 MBytes  15.9 Mbits/sec                  receiver Comparing with the unpatched v6.7.2 we can also see a difference: [ ID] Interval           Transfer     Bitrate         Retr [  5]   0.00-10.00  sec  23.4 MBytes  19.6 Mbits/sec 0             sender [  5]   0.00-10.01  sec  20.7 MBytes  17.3 Mbits/sec                  receiver 3) Simple WPA3 AP test: to finish this round of tests, I started an AP with a configuration enabling SAE. The AP was started successfully and I could connect a client with wpa_supplicant. Ping tests were also succesful here. The iperf3 result shows a bigger bandwidth than all the previous tests: [ ID] Interval           Transfer     Bitrate         Retr [  5]   0.00-10.00  sec  20.6 MBytes  17.3 Mbits/sec 35             sender [  5]   0.00-10.04  sec  19.8 MBytes  16.6 Mbits/sec                  receiver To summarize the results, it seems that the basic functionality is working and also WPA3 support. We have a different behavior when starting the AP, where now we need to stop connman (blacklisting the uap0 interface will probably also work) beforehand. I don't know if the bandwidth results are something to be worried about, I saw some variation between iperf3 runs, but the results I posted show an average of what I was seeing. Rafael