Re: [PATCH v7 02/12] wifi: mwifiex: fixed group rekey issue for WPA3.

From: Francesco Dolcini
Date: Fri Dec 01 2023 - 05:15:40 EST


On Tue, Nov 28, 2023 at 04:31:05PM +0800, David Lin wrote:
> If host mlme is enabled, gropu rekey offload should be disabled.
>
> Signed-off-by: David Lin <yu-hao.lin@xxxxxxx>
> ---
> drivers/net/wireless/marvell/mwifiex/cfg80211.c | 3 +++
> drivers/net/wireless/marvell/mwifiex/main.c | 4 ++++
> drivers/net/wireless/marvell/mwifiex/util.c | 7 +++++++
> 3 files changed, 14 insertions(+)
>
> diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> index 40c39e4765f7..3d59e6a441b9 100644
> --- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> +++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> @@ -3657,6 +3657,9 @@ static int mwifiex_set_rekey_data(struct wiphy *wiphy, struct net_device *dev,
> if (!ISSUPP_FIRMWARE_SUPPLICANT(priv->adapter->fw_cap_info))
> return -EOPNOTSUPP;
>
> + if (priv->adapter->host_mlme)
> + return 0;

this is a fixup of the previous patch, you should not introduce an issue
and fix it in the following patch. Please make it correct in the first
place fixing up that patch.


> +
> return mwifiex_send_cmd(priv, HostCmd_CMD_GTK_REKEY_OFFLOAD_CFG,
> HostCmd_ACT_GEN_SET, 0, data, true);
> }
> diff --git a/drivers/net/wireless/marvell/mwifiex/main.c b/drivers/net/wireless/marvell/mwifiex/main.c
> index d99127dc466e..3bebb6c37604 100644
> --- a/drivers/net/wireless/marvell/mwifiex/main.c
> +++ b/drivers/net/wireless/marvell/mwifiex/main.c
> @@ -802,6 +802,10 @@ mwifiex_bypass_tx_queue(struct mwifiex_private *priv,
> "bypass txqueue; eth type %#x, mgmt %d\n",
> ntohs(eth_hdr->h_proto),
> mwifiex_is_skb_mgmt_frame(skb));
> + if (ntohs(eth_hdr->h_proto) == ETH_P_PAE)
> + mwifiex_dbg(priv->adapter, MSG,
> + "key: send EAPOL to %pM\n",
> + eth_hdr->h_dest);

this is just debug code, at a first glance not sure i
> diff --git a/drivers/net/wireless/marvell/mwifiex/util.c b/drivers/net/wireless/marvell/mwifiex/util.c
> index 23675c1cecae..ff1b2f162c30 100644
> --- a/drivers/net/wireless/marvell/mwifiex/util.c
> +++ b/drivers/net/wireless/marvell/mwifiex/util.c
> @@ -482,8 +482,15 @@ mwifiex_process_mgmt_packet(struct mwifiex_private *priv,
> return 0;
>
> if (ieee80211_is_deauth(ieee_hdr->frame_control)) {
> + mwifiex_dbg(priv->adapter, MSG,
> + "auth: receive deauth from %pM\n",
> + ieee_hdr->addr3);
ditto

> priv->auth_flag = 0;
> priv->auth_alg = 0xFFFF;
> + } else {
> + mwifiex_dbg(priv->adapter, MSG,
> + "assoc: receive disasso from %pM\n",
> + ieee_hdr->addr3);
ditto