From f9aae4b6ebdcad12c010c32b4f9036b2a4486704 Mon Sep 17 00:00:00 2001 From: Yuying Zhang Date: Wed, 14 Jul 2021 02:20:27 +0000 Subject: [PATCH] app/testpmd: fix MAC address after port reset [ upstream commit 5ffc4a2acadad427f2f9ddf8e072632764ad2d47 ] MAC address of each port in global variable ports hasn't been updated after resetting. It was the initial one after resetting VF MAC address. This patch gets correct port MAC address when starting port. Fixes: a5279d25616d ("app/testpmd: check status of getting MAC address") Signed-off-by: Yuying Zhang Acked-by: Aman Deep Singh Acked-by: Xiaoyun Li --- app/test-pmd/testpmd.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index 9485953aba..0861436c02 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -2317,7 +2317,6 @@ start_port(portid_t pid) portid_t pi; queueid_t qi; struct rte_port *port; - struct rte_ether_addr mac_addr; struct rte_eth_hairpin_cap cap; if (port_id_is_invalid(pid, ENABLED_WARN)) @@ -2481,11 +2480,14 @@ start_port(portid_t pid) RTE_PORT_HANDLING, RTE_PORT_STARTED) == 0) printf("Port %d can not be set into started\n", pi); - if (eth_macaddr_get_print_err(pi, &mac_addr) == 0) + if (eth_macaddr_get_print_err(pi, &port->eth_addr) == 0) printf("Port %d: %02X:%02X:%02X:%02X:%02X:%02X\n", pi, - mac_addr.addr_bytes[0], mac_addr.addr_bytes[1], - mac_addr.addr_bytes[2], mac_addr.addr_bytes[3], - mac_addr.addr_bytes[4], mac_addr.addr_bytes[5]); + port->eth_addr.addr_bytes[0], + port->eth_addr.addr_bytes[1], + port->eth_addr.addr_bytes[2], + port->eth_addr.addr_bytes[3], + port->eth_addr.addr_bytes[4], + port->eth_addr.addr_bytes[5]); /* at least one port started, need checking link status */ need_check_link_status = 1;