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

From: Pkshih
Date: Mon Jul 27 2020 - 01:51:42 EST


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 <vulab@xxxxxxxxxxx>
> ---
> Â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");