net/i40e: fix primary MAC type when starting port
authorRobin Zhang <robinx.zhang@intel.com>
Wed, 28 Apr 2021 08:04:52 +0000 (08:04 +0000)
committerQi Zhang <qi.z.zhang@intel.com>
Thu, 29 Apr 2021 08:37:22 +0000 (10:37 +0200)
When start port, all MAC addresses will be set. We should set the MAC
type of default MAC address as VIRTCHNL_ETHER_ADDR_PRIMARY.

Fixes: 3f604ddf33cf ("net/i40e: fix lack of MAC type when set MAC address")
Cc: stable@dpdk.org
Signed-off-by: Robin Zhang <robinx.zhang@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/i40e/i40e_ethdev_vf.c

index 156ad9a..ad80aa1 100644 (file)
@@ -2128,7 +2128,9 @@ i40evf_add_del_all_mac_addr(struct rte_eth_dev *dev, bool add)
                                continue;
                        rte_memcpy(list->list[j].addr, addr->addr_bytes,
                                         sizeof(addr->addr_bytes));
-                       list->list[j].type = VIRTCHNL_ETHER_ADDR_EXTRA;
+                       list->list[j].type = (j == 0 ?
+                                             VIRTCHNL_ETHER_ADDR_PRIMARY :
+                                             VIRTCHNL_ETHER_ADDR_EXTRA);
                        PMD_DRV_LOG(DEBUG, "add/rm mac:%x:%x:%x:%x:%x:%x",
                                    addr->addr_bytes[0], addr->addr_bytes[1],
                                    addr->addr_bytes[2], addr->addr_bytes[3],