[dpdk-stable] [PATCH v3 1/4] test: enable tests to run in no-huge mode

Wang, Yipeng1 yipeng1.wang at intel.com
Tue Mar 17 20:15:24 CET 2020


> -----Original Message-----
> From: Ruifeng Wang <ruifeng.wang at arm.com>
> Sent: Friday, March 13, 2020 1:16 AM
> To: aconole at redhat.com; maicolgabriel at hotmail.com; Richardson, Bruce
> <bruce.richardson at intel.com>; Ananyev, Konstantin
> <konstantin.ananyev at intel.com>; Dumitrescu, Cristian
> <cristian.dumitrescu at intel.com>; Wang, Yipeng1
> <yipeng1.wang at intel.com>; Gobriel, Sameh <sameh.gobriel at intel.com>
> Cc: dev at dpdk.org; david.marchand at redhat.com; Burakov, Anatoly
> <anatoly.burakov at intel.com>; gavin.hu at arm.com;
> honnappa.nagarahalli at arm.com; juraj.linkes at pantheon.tech; nd at arm.com;
> Ruifeng Wang <ruifeng.wang at arm.com>; stable at dpdk.org
> Subject: [PATCH v3 1/4] test: enable tests to run in no-huge mode
> 
> When running with '--no-huge' flag, tests failed with messages as:
>     ACL context creation with invalid NUMA should have failed!
>     fbk hash creation should have failed
>     test_table_pipeline: Check pipeline invalid params failed.
> 
> These cases test against invalid socket ID as input parameter, and expect
> error return. But function calls return success because invalid sock ID is
> overwritten to SOCKET_ID_ANY when in no-huge mode.
> 
> The tests against invalid socket ID are skipped in no-huge mode.
> 
> Fixes: 5640171c528a ("malloc: fix external heap allocation in no-huge mode")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Ruifeng Wang <ruifeng.wang at arm.com>
> Reviewed-by: Gavin Hu <gavin.hu at arm.com>
> ---
>  app/test/test_acl.c            | 22 ++++++++++++----------
>  app/test/test_hash.c           |  7 +++++--
>  app/test/test_table_pipeline.c | 12 +++++++-----
>  3 files changed, 24 insertions(+), 17 deletions(-)
> 
> diff --git a/app/test/test_acl.c b/app/test/test_acl.c index
> 501de35da..316bf4d06 100644
> --- a/app/test/test_acl.c
> +++ b/app/test/test_acl.c
> @@ -1397,16 +1397,18 @@ test_invalid_parameters(void)
>  	} else
>  		rte_acl_free(acx);
> 
> -	/* invalid NUMA node */
> -	memcpy(&param, &acl_param, sizeof(param));
> -	param.socket_id = RTE_MAX_NUMA_NODES + 1;
> -
> -	acx = rte_acl_create(&param);
> -	if (acx != NULL) {
> -		printf("Line %i: ACL context creation with invalid NUMA "
> -				"should have failed!\n", __LINE__);
> -		rte_acl_free(acx);
> -		return -1;
> +	if (rte_eal_has_hugepages()) {
> +		/* invalid NUMA node */
> +		memcpy(&param, &acl_param, sizeof(param));
> +		param.socket_id = RTE_MAX_NUMA_NODES + 1;
> +
> +		acx = rte_acl_create(&param);
> +		if (acx != NULL) {
> +			printf("Line %i: ACL context creation with invalid "
> +					"NUMA should have failed!\n",
> __LINE__);
> +			rte_acl_free(acx);
> +			return -1;
> +		}
>  	}
> 
>  	/* NULL name */
> diff --git a/app/test/test_hash.c b/app/test/test_hash.c index
> fbd5725c6..ab978ea68 100644
> --- a/app/test/test_hash.c
> +++ b/app/test/test_hash.c
> @@ -1136,8 +1136,11 @@ fbk_hash_unit_test(void)
>  	handle = rte_fbk_hash_create(&invalid_params_7);
>  	RETURN_IF_ERROR_FBK(handle != NULL, "fbk hash creation should
> have failed");
> 
> -	handle = rte_fbk_hash_create(&invalid_params_8);
> -	RETURN_IF_ERROR_FBK(handle != NULL, "fbk hash creation should
> have failed");
> +	if (rte_eal_has_hugepages()) {
> +		handle = rte_fbk_hash_create(&invalid_params_8);
> +		RETURN_IF_ERROR_FBK(handle != NULL,
> +					"fbk hash creation should have
> failed");
> +	}
> 
>  	handle = rte_fbk_hash_create(&invalid_params_same_name_1);
>  	RETURN_IF_ERROR_FBK(handle == NULL, "fbk hash creation should

[Wang, Yipeng] 
For the hash table part:
Acked-by: Yipeng Wang <yipeng1.wang at intel.com>

Just a side-note, not related to this patch,
should we add such info in programmer's guide for rte_malloc saying that if no-huge, then socket-id
Is not taken?


More information about the stable mailing list