When setting the MAC address, the ethdev layer copies the new mac
address in dev->data->mac_addrs[0] before calling the dev_ops.

Therefore, "is_same_ether_addr(mac_addr, dev->data->mac_addrs)" was
always true, and the MAC was never set. Remove this test to fix the
issue.

Fixes: 943c2d899a0c ("net/i40e: set VF MAC from VF")
Cc: sta...@dpdk.org

Signed-off-by: Olivier Matz <olivier.m...@6wind.com>
---
 drivers/net/i40e/i40e_ethdev_vf.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev_vf.c 
b/drivers/net/i40e/i40e_ethdev_vf.c
index 91b5bb033..17446ec23 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -2681,9 +2681,6 @@ i40evf_set_default_mac_addr(struct rte_eth_dev *dev,
                return;
        }
 
-       if (is_same_ether_addr(mac_addr, dev->data->mac_addrs))
-               return;
-
        if (vf->flags & I40E_FLAG_VF_MAC_BY_PF)
                return;
 
-- 
2.11.0

Reply via email to