dpdk : incorrect rx filter being installed
[vpp.git] / src / vnet / devices / dpdk / init.c
index 4c040d2..3fa656e 100755 (executable)
@@ -125,6 +125,10 @@ dpdk_port_setup (dpdk_main_t * dm, dpdk_device_t * xd)
     {
       int rv;
       rv = rte_eth_dev_start (xd->device_index);
+      if (!rv && xd->default_mac_address)
+       rv = rte_eth_dev_default_mac_addr_set (xd->device_index,
+                                              (struct ether_addr *)
+                                              xd->default_mac_address);
       if (rv < 0)
        clib_warning ("rte_eth_dev_start %d returned %d",
                      xd->device_index, rv);
@@ -199,6 +203,10 @@ dpdk_flag_change (vnet_main_t * vnm, vnet_hw_interface_t * hi, u32 flags)
          if (xd->flags & DPDK_DEVICE_FLAG_ADMIN_UP)
            {
              int rv = rte_eth_dev_start (xd->device_index);
+             if (!rv && xd->default_mac_address)
+               rv = rte_eth_dev_default_mac_addr_set (xd->device_index,
+                                                      (struct ether_addr *)
+                                                      xd->default_mac_address);
              if (rv < 0)
                clib_warning ("rte_eth_dev_start %d returned %d",
                              xd->device_index, rv);