Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
dpdk : incorrect rx filter being installed
[vpp.git]
/
src
/
vnet
/
devices
/
dpdk
/
init.c
diff --git
a/src/vnet/devices/dpdk/init.c
b/src/vnet/devices/dpdk/init.c
index
4c040d2
..
3fa656e
100755
(executable)
--- a/
src/vnet/devices/dpdk/init.c
+++ b/
src/vnet/devices/dpdk/init.c
@@
-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);
{
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);
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 (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);
if (rv < 0)
clib_warning ("rte_eth_dev_start %d returned %d",
xd->device_index, rv);