Previous numa_support = 0 by default, it need to add --numa to testpmd command line to enable numa, so port_numa and ring_numa were initialized at function launch_args_parse(), now testpmd change numa_support = 1 as default, so port_numa and ring_numa also need to initialize by default, otherwise port->socket_id will be probed to wrong value.
Fixes: 999b2ee0fe45 ("app/testpmd: enable NUMA support by default") Signed-off-by: Yulong Pei <yulong....@intel.com> --- app/test-pmd/parameters.c | 6 +----- app/test-pmd/testpmd.c | 7 +++++++ 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/test-pmd/parameters.c b/app/test-pmd/parameters.c index 787e143..36f7dd8 100644 --- a/app/test-pmd/parameters.c +++ b/app/test-pmd/parameters.c @@ -680,12 +680,8 @@ launch_args_parse(int argc, char** argv) parse_fwd_portmask(optarg); if (!strcmp(lgopts[opt_idx].name, "no-numa")) numa_support = 0; - if (!strcmp(lgopts[opt_idx].name, "numa")) { + if (!strcmp(lgopts[opt_idx].name, "numa")) numa_support = 1; - memset(port_numa,NUMA_NO_CONFIG,RTE_MAX_ETHPORTS); - memset(rxring_numa,NUMA_NO_CONFIG,RTE_MAX_ETHPORTS); - memset(txring_numa,NUMA_NO_CONFIG,RTE_MAX_ETHPORTS); - } if (!strcmp(lgopts[opt_idx].name, "mp-anon")) { mp_anon = 1; } diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index dfe6442..78423ee 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -529,6 +529,13 @@ init_config(void) uint8_t port_per_socket[RTE_MAX_NUMA_NODES]; memset(port_per_socket,0,RTE_MAX_NUMA_NODES); + + if (numa_support) { + memset(port_numa, NUMA_NO_CONFIG, RTE_MAX_ETHPORTS); + memset(rxring_numa, NUMA_NO_CONFIG, RTE_MAX_ETHPORTS); + memset(txring_numa, NUMA_NO_CONFIG, RTE_MAX_ETHPORTS); + } + /* Configuration of logical cores. */ fwd_lcores = rte_zmalloc("testpmd: fwd_lcores", sizeof(struct fwd_lcore *) * nb_lcores, -- 2.5.0