aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/dpdk/device/init.c
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2019-04-24 13:16:58 +0200
committerFlorin Coras <florin.coras@gmail.com>2019-04-24 14:51:28 +0000
commit165e4721e4d803b737e245f8b902d0d198045026 (patch)
treec4a338cbd7689779e6e992e33b3de628d5753af8 /src/plugins/dpdk/device/init.c
parent5e6f7348cf456cffc85dae8bc6857589061122ba (diff)
dpdk: get a rid of "Invalid port_id=" log message
Change-Id: I65e7188c6893acca67455ff37f2dfbd0bedd5c09 Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/plugins/dpdk/device/init.c')
-rw-r--r--src/plugins/dpdk/device/init.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/plugins/dpdk/device/init.c b/src/plugins/dpdk/device/init.c
index db4316b6246..4d8ca4fa45b 100644
--- a/src/plugins/dpdk/device/init.c
+++ b/src/plugins/dpdk/device/init.c
@@ -271,6 +271,7 @@ dpdk_lib_init (dpdk_main_t * dm)
struct rte_eth_dev_info dev_info;
struct rte_pci_device *pci_dev;
struct rte_eth_link l;
+ dpdk_portid_t next_port_id;
dpdk_device_config_t *devconf = 0;
vlib_pci_addr_t pci_addr;
uword *p = 0;
@@ -316,13 +317,14 @@ dpdk_lib_init (dpdk_main_t * dm)
devconf = &dm->conf->default_devconf;
/* Handle interface naming for devices with multiple ports sharing same PCI ID */
- if (pci_dev)
+ if (pci_dev &&
+ ((next_port_id = rte_eth_find_next (i)) != RTE_MAX_ETHPORTS))
{
struct rte_eth_dev_info di = { 0 };
struct rte_pci_device *next_pci_dev;
- rte_eth_dev_info_get (i + 1, &di);
+ rte_eth_dev_info_get (next_port_id, &di);
next_pci_dev = di.device ? RTE_DEV_TO_PCI (di.device) : 0;
- if (pci_dev && next_pci_dev &&
+ if (next_pci_dev &&
pci_addr.as_u32 != last_pci_addr.as_u32 &&
memcmp (&pci_dev->addr, &next_pci_dev->addr,
sizeof (struct rte_pci_addr)) == 0)