Re: [Intel-wired-lan] [PATCH net] iavf: iavf_virtchnl_completion: drop duplicate ether_addr_equal() test

Loktionov, Aleksandr
2026-04-21T10:20:30Z

> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@osuosl.org> On Behalf
> Of Corinna Vinschen
> Sent: Tuesday, April 21, 2026 12:00 PM
> To: intel-wired-lan@osuosl.org; netdev@vger.kernel.org
> Cc: Vinschen, Corinna <vinschen@redhat.com>; Jose Ignacio Tornos
> Martinez <jtornosm@redhat.com>
> Subject: [Intel-wired-lan] [PATCH net] iavf: iavf_virtchnl_completion:
> drop duplicate ether_addr_equal() test
>
> This is just a simple cleanup fix. Commit 35a2443d0910f ("iavf: Add
> waiting for response from PF in set mac") introduced a duplicate
> ether_addr_equal() check, so the current code tests the new MAC twice
> against the former MAC.
>
> Remove the outer ether_addr_equal() test, remnant of commit
> c5c922b3e09b
> ("iavf: fix MAC address setting for VFs when filter is rejected")
>
> Signed-off-by: Corinna Vinschen <vinschen@redhat.com>
> Fixes: 35a2443d0910f ("iavf: Add waiting for response from PF in set
> mac")

I think Cc: stable@vger.kernel.org should be added.
Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>

> ---
> drivers/net/ethernet/intel/iavf/iavf_virtchnl.c | 12 +++++-------
> 1 file changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c
> b/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c
> index a52c100dcbc5..9b8e7e4376c2 100644
> --- a/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c
> +++ b/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c
> @@ -2579,13 +2579,11 @@ void iavf_virtchnl_completion(struct
> iavf_adapter *adapter,
> case VIRTCHNL_OP_ADD_ETH_ADDR:
> if (!v_retval)
> iavf_mac_add_ok(adapter);
> - if (!ether_addr_equal(netdev->dev_addr, adapter-
> >hw.mac.addr))
> - if (!ether_addr_equal(netdev->dev_addr,
> - adapter->hw.mac.addr)) {
> - netif_addr_lock_bh(netdev);
> - eth_hw_addr_set(netdev, adapter-
> >hw.mac.addr);
> - netif_addr_unlock_bh(netdev);
> - }
> + if (!ether_addr_equal(netdev->dev_addr, adapter-
> >hw.mac.addr)) {
> + netif_addr_lock_bh(netdev);
> + eth_hw_addr_set(netdev, adapter->hw.mac.addr);
> + netif_addr_unlock_bh(netdev);
> + }
> wake_up(&adapter->vc_waitqueue);
> break;
> case VIRTCHNL_OP_GET_STATS: {
> --
> 2.53.0