From a80f8f371733a73a0fa8351a66bd1e519f1b90cd Mon Sep 17 00:00:00 2001 From: Haggai Eran Date: Tue, 4 Feb 2020 14:32:19 +0200 Subject: [PATCH] dpdk: use port_id as interface name suffix for representors Type: feature Representor devices include a port ID as part of their switch_info struct, and it is helpful to use that in the interface name. Signed-off-by: Haggai Eran Change-Id: Id24627e7daf857f8b0e8ace2f592c098678081c7 --- src/plugins/dpdk/device/init.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/plugins/dpdk/device/init.c b/src/plugins/dpdk/device/init.c index 5d0e5a2605d..f668d98db5d 100644 --- a/src/plugins/dpdk/device/init.c +++ b/src/plugins/dpdk/device/init.c @@ -295,8 +295,14 @@ dpdk_lib_init (dpdk_main_t * dm) else devconf = &dm->conf->default_devconf; + /* Handle representor devices that share the same PCI ID */ + if (dev_info.switch_info.domain_id != RTE_ETH_DEV_SWITCH_DOMAIN_ID_INVALID) + { + if (dev_info.switch_info.port_id != (uint16_t)-1) + xd->interface_name_suffix = format (0, "%d", dev_info.switch_info.port_id); + } /* Handle interface naming for devices with multiple ports sharing same PCI ID */ - if (pci_dev && + else if (pci_dev && ((next_port_id = rte_eth_find_next (i + 1)) != RTE_MAX_ETHPORTS)) { struct rte_eth_dev_info di = { 0 }; -- 2.16.6