From: Damjan Marion Date: Wed, 24 Apr 2019 11:16:58 +0000 (+0200) Subject: dpdk: get a rid of "Invalid port_id=" log message X-Git-Tag: v20.01-rc0~745 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;ds=sidebyside;h=refs%2Fchanges%2F39%2F19139%2F2;p=vpp.git dpdk: get a rid of "Invalid port_id=" log message Change-Id: I65e7188c6893acca67455ff37f2dfbd0bedd5c09 Signed-off-by: Damjan Marion --- 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)