[dpdk-dev] [PATCH 2/2] examples/ip_pipeline: fix to use sock id instead of cpuid

Dumitrescu, Cristian cristian.dumitrescu at intel.com
Fri Feb 14 12:27:09 CET 2020



> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Hemant Agrawal
> Sent: Wednesday, December 11, 2019 5:26 AM
> To: dev at dpdk.org
> Cc: Dumitrescu, Cristian <cristian.dumitrescu at intel.com>; Stable at dpdk.org;
> Jun Yang <jun.yang at nxp.com>
> Subject: [dpdk-dev] [PATCH 2/2] examples/ip_pipeline: fix to use sock id
> instead of cpuid
> 
> From: Jun Yang <jun.yang at nxp.com>
> 
> rte_lcore_to_socket_id should be used to convert cpu ID to socket ID.
> 
> Fixes: 6bfe74f8c93e ("examples/ip_pipeline: add mempool object")
> Fixes: d75c371e9b46 ("examples/ip_pipeline: add pipeline object")
> Cc: Stable at dpdk.org
> 
> Signed-off-by: Jun Yang <jun.yang at nxp.com>
> ---
>  examples/ip_pipeline/mempool.c  |  2 +-
>  examples/ip_pipeline/pipeline.c | 10 +++++-----
>  2 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/examples/ip_pipeline/mempool.c
> b/examples/ip_pipeline/mempool.c
> index f5d2a7d108..d7eea85f8f 100644
> --- a/examples/ip_pipeline/mempool.c
> +++ b/examples/ip_pipeline/mempool.c
> @@ -58,7 +58,7 @@ mempool_create(const char *name, struct
> mempool_params *params)
>  		params->cache_size,
>  		0,
>  		params->buffer_size - sizeof(struct rte_mbuf),
> -		params->cpu_id);
> +		rte_lcore_to_socket_id(params->cpu_id));
> 
>  	if (m == NULL)
>  		return NULL;
> diff --git a/examples/ip_pipeline/pipeline.c
> b/examples/ip_pipeline/pipeline.c
> index b627310a0c..d8df62d785 100644
> --- a/examples/ip_pipeline/pipeline.c
> +++ b/examples/ip_pipeline/pipeline.c
> @@ -94,7 +94,7 @@ pipeline_create(const char *name, struct
> pipeline_params *params)
> 
>  	msgq_req = rte_ring_create(msgq_name,
>  		PIPELINE_MSGQ_SIZE,
> -		params->cpu_id,
> +		rte_lcore_to_socket_id(params->cpu_id),
>  		RING_F_SP_ENQ | RING_F_SC_DEQ);
>  	if (msgq_req == NULL)
>  		return NULL;
> @@ -103,7 +103,7 @@ pipeline_create(const char *name, struct
> pipeline_params *params)
> 
>  	msgq_rsp = rte_ring_create(msgq_name,
>  		PIPELINE_MSGQ_SIZE,
> -		params->cpu_id,
> +		rte_lcore_to_socket_id(params->cpu_id),
>  		RING_F_SP_ENQ | RING_F_SC_DEQ);
>  	if (msgq_rsp == NULL) {
>  		rte_ring_free(msgq_req);
> @@ -111,7 +111,7 @@ pipeline_create(const char *name, struct
> pipeline_params *params)
>  	}
> 
>  	pp.name = name;
> -	pp.socket_id = (int) params->cpu_id;
> +	pp.socket_id = (int) rte_lcore_to_socket_id(params->cpu_id);
>  	pp.offset_port_id = params->offset_port_id;
> 
>  	p = rte_pipeline_create(&pp);
> @@ -332,7 +332,7 @@ pipeline_port_in_create(const char *pipeline_name,
> 
>  	if (ap) {
>  		action = rte_port_in_action_create(ap->ap,
> -			pipeline->cpu_id);
> +			rte_lcore_to_socket_id(pipeline->cpu_id));
>  		if (action == NULL)
>  			return -1;
> 
> @@ -1002,7 +1002,7 @@ pipeline_table_create(const char *pipeline_name,
> 
>  	if (ap) {
>  		action = rte_table_action_create(ap->ap,
> -			pipeline->cpu_id);
> +			rte_lcore_to_socket_id(pipeline->cpu_id));
>  		if (action == NULL)
>  			return -1;
> 
> --
> 2.17.1

NACK.

This is incorrect, probably a misunderstanding: the params->cpu_id is already the CPU socket ID (passed as parameter), and not the core ID. For core ID, we typically use variable names as core_id or lcore_id, and never cpu_id.


More information about the dev mailing list