From: Yulong Pei Date: Wed, 3 May 2017 10:29:47 +0000 (+0800) Subject: app/testpmd: fix NUMA structures initialization X-Git-Tag: spdx-start~3252 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=487f9a592a273bbb0534652bc836cabc0af14100;p=dpdk.git app/testpmd: fix NUMA structures initialization 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 Acked-by: Jingjing Wu --- diff --git a/app/test-pmd/parameters.c b/app/test-pmd/parameters.c index 787e1434cc..36f7dd8337 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 b39cd63985..dd216f606a 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,