Reported-by: Jayakumar, Muthurajan <muthurajan.jayakumar at intel.com> Signed-off-by: Cunming Liang <cunming.liang at intel.com> --- app/test/test_pmd_perf.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/app/test/test_pmd_perf.c b/app/test/test_pmd_perf.c index 1fd6843..6f218f7 100644 --- a/app/test/test_pmd_perf.c +++ b/app/test/test_pmd_perf.c @@ -321,6 +321,19 @@ alloc_lcore(uint16_t socketid) return (uint16_t)-1; } +static int +get_socket_id(uint8_t port_id) +{ + int socket_id; + + socket_id = rte_eth_dev_socket_id(port_id); + if (socket_id < 0) + /* enforce using socket 0 when no NUMA support */ + socket_id = 0; + + return socket_id; +} + volatile uint64_t stop; uint64_t count; uint64_t drop; @@ -727,7 +740,7 @@ test_pmd_perf(void) num = 0; for (portid = 0; portid < nb_ports; portid++) { if (socketid == -1) { - socketid = rte_eth_dev_socket_id(portid); + socketid = get_socket_id(portid); slave_id = alloc_lcore(socketid); if (slave_id == (uint16_t)-1) { printf("No avail lcore to run test\n"); @@ -737,7 +750,7 @@ test_pmd_perf(void) slave_id, socketid); } - if (socketid != rte_eth_dev_socket_id(portid)) { + if (socketid != get_socket_id(portid)) { printf("Skip port %d\n", portid); continue; } @@ -818,7 +831,7 @@ test_pmd_perf(void) /* port tear down */ for (portid = 0; portid < nb_ports; portid++) { - if (socketid != rte_eth_dev_socket_id(portid)) + if (socketid != get_socket_id(portid)) continue; rte_eth_dev_stop(portid); -- 1.8.1.4