From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Marchand Subject: [PATCH] app/testpmd: fix crash when using set fwd tx_first with NUMA Date: Wed, 30 Apr 2014 15:16:16 +0200 Message-ID: <1398863776-31121-1-git-send-email-david.marchand@6wind.com> To: dev-VfR2kkLFssw@public.gmane.org Return-path: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" From: Adrien Mazarguil When NUMA is enabled, the per-core fwd_lcore structure mbuf pool pointer is not set, causing a crash. Initialize fwd_lcore after allocating NUMA memory pools. Signed-off-by: Adrien Mazarguil --- app/test-pmd/testpmd.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index 97229a5..9c56914 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -552,15 +552,6 @@ init_config(void) mbuf_pool_create(mbuf_data_size, nb_mbuf_per_pool, socket_num); } - /* - * Records which Mbuf pool to use by each logical core, if needed. - */ - for (lc_id = 0; lc_id < nb_lcores; lc_id++) { - mbp = mbuf_pool_find(rte_lcore_to_socket_id(lc_id)); - if (mbp == NULL) - mbp = mbuf_pool_find(0); - fwd_lcores[lc_id]->mbp = mbp; - } /* Configuration of Ethernet ports. */ ports = rte_zmalloc("testpmd: ports", @@ -609,6 +600,17 @@ init_config(void) } } init_port_config(); + + /* + * Records which Mbuf pool to use by each logical core, if needed. + */ + for (lc_id = 0; lc_id < nb_lcores; lc_id++) { + mbp = mbuf_pool_find(rte_lcore_to_socket_id(lc_id)); + if (mbp == NULL) + mbp = mbuf_pool_find(0); + fwd_lcores[lc_id]->mbp = mbp; + } + /* Configuration of packet forwarding streams. */ if (init_fwd_streams() < 0) rte_exit(EXIT_FAILURE, "FAIL from init_fwd_streams()\n"); -- 1.7.10.4