[dpdk-dev] [PATCH v2] app/testpmd: fix physic port socket initialization

Ananyev, Konstantin konstantin.ananyev at intel.com
Wed Oct 17 13:02:33 CEST 2018



> -----Original Message-----
> From: phil.yang at arm.com [mailto:phil.yang at arm.com]
> Sent: Wednesday, October 17, 2018 2:37 AM
> To: dev at dpdk.org
> Cc: Ananyev, Konstantin <konstantin.ananyev at intel.com>; Yigit, Ferruh <ferruh.yigit at intel.com>
> Subject: [PATCH v2] app/testpmd: fix physic port socket initialization
> 
> Once the lcore list setting excluded the socket which physic device
> attached, it will cause failure. Meanwhile, it will disable Testpmd
> cross NUMA scenario.
> 
> Fixes: dbfb8ec ("app/testpmd: optimize mbuf pool allocation")
> 
> Signed-off-by: Phil Yang <phil.yang at arm.com>
> Reviewed-by: Gavin Hu <Gavin.Hu at arm.com>
> ---
>  app/test-pmd/testpmd.c | 14 +++++++++++++-
>  1 file changed, 13 insertions(+), 1 deletion(-)
> 
> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
> index 5dbbf78..fd718b0 100644
> --- a/app/test-pmd/testpmd.c
> +++ b/app/test-pmd/testpmd.c
> @@ -565,9 +565,21 @@ set_default_fwd_ports_config(void)
>  	portid_t pt_id;
>  	int i = 0;
> 
> -	RTE_ETH_FOREACH_DEV(pt_id)
> +	RTE_ETH_FOREACH_DEV(pt_id) {
>  		fwd_ports_ids[i++] = pt_id;
> 
> +		/* Update sockets info according to the attached device */
> +		int socket_id = rte_eth_dev_socket_id(pt_id);
> +		if (socket_id >= 0 && new_socket_id(socket_id)) {
> +			if (num_sockets >= RTE_MAX_NUMA_NODES) {
> +				rte_exit(EXIT_FAILURE,
> +					 "Total sockets greater than %u\n",
> +					 RTE_MAX_NUMA_NODES);
> +			}
> +			socket_ids[num_sockets++] = socket_id;
> +		}
> +	}
> +
>  	nb_cfg_ports = nb_ports;
>  	nb_fwd_ports = nb_ports;
>  }
> --

Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

> 2.7.4



More information about the dev mailing list