Subject: Re: [PATCH] rtlwifi: core: use eth_broadcast_addr() to assign broadcast

From: Pkshih <[email-masked]>
Date: Mon, 27 Jul 2020 05:51:09 +0000

On Mon, 2020-07-27 at 02:16 +0000, Xu Wang wrote:
> This patch is to use eth_broadcast_addr() to assign broadcast address
> insetad of memcpy().
> 
> Signed-off-by: Xu Wang <[email-masked]>
> ---
>  drivers/net/wireless/realtek/rtlwifi/core.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/net/wireless/realtek/rtlwifi/core.c
> b/drivers/net/wireless/realtek/rtlwifi/core.c
> index 4dd82c6052f0..8bb49b77b5c8 100644
> --- a/drivers/net/wireless/realtek/rtlwifi/core.c
> +++ b/drivers/net/wireless/realtek/rtlwifi/core.c
> @@ -1512,7 +1512,6 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum
> set_key_cmd cmd,
>  	bool wep_only = false;
>  	int err = 0;
>  	u8 mac_addr[ETH_ALEN];
> -	u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
>  
>  	rtlpriv->btcoexist.btc_info.in_4way = false;
>  

'bcast_addr' is also used by debug:

        RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,                                  
                 "%s hardware based encryption for keyidx: %d, mac: %pM\n",     
                  cmd == SET_KEY ? "Using" : "Disabling", key->keyidx,          
                  sta ? sta->addr : bcast_addr); 

If you turn on CONFIG_RTLWIFI_DEBUG, compiler must warn an error.
So, NACK.

> @@ -1634,7 +1633,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum
> set_key_cmd cmd,
>  			memcpy(rtlpriv->sec.key_buf[key_idx],
>  			       key->key, key->keylen);
>  			rtlpriv->sec.key_len[key_idx] = key->keylen;
> -			memcpy(mac_addr, bcast_addr, ETH_ALEN);
> +			eth_broadcast_addr(mac_addr);
>  		} else {	/* pairwise key */
>  			RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,
>  				 "set pairwise key\n");