* Re: [dpdk-stable] [PATCH v3 1/4] test: enable tests to run in no-huge mode
2020-03-13 8:16 ` [dpdk-stable] [PATCH v3 1/4] test: enable tests to run in no-huge mode Ruifeng Wang
@ 2020-03-17 12:49 ` Aaron Conole
2020-03-17 19:15 ` Wang, Yipeng1
1 sibling, 0 replies; 3+ messages in thread
From: Aaron Conole @ 2020-03-17 12:49 UTC (permalink / raw)
To: Ruifeng Wang
Cc: maicolgabriel, bruce.richardson, konstantin.ananyev,
cristian.dumitrescu, yipeng1.wang, sameh.gobriel, dev,
david.marchand, anatoly.burakov, gavin.hu, honnappa.nagarahalli,
juraj.linkes, nd, stable
Ruifeng Wang <ruifeng.wang@arm.com> writes:
> 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@dpdk.org
>
> Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
> Reviewed-by: Gavin Hu <gavin.hu@arm.com>
> ---
Acked-by: Aaron Conole <aconole@redhat.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(¶m, &acl_param, sizeof(param));
> - param.socket_id = RTE_MAX_NUMA_NODES + 1;
> -
> - acx = rte_acl_create(¶m);
> - 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(¶m, &acl_param, sizeof(param));
> + param.socket_id = RTE_MAX_NUMA_NODES + 1;
> +
> + acx = rte_acl_create(¶m);
> + 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 have succeeded");
> diff --git a/app/test/test_table_pipeline.c b/app/test/test_table_pipeline.c
> index 441338ac0..bc412c308 100644
> --- a/app/test/test_table_pipeline.c
> +++ b/app/test/test_table_pipeline.c
> @@ -190,11 +190,13 @@ check_pipeline_invalid_params(void)
> goto fail;
> }
>
> - p = rte_pipeline_create(&pipeline_params_3);
> - if (p != NULL) {
> - RTE_LOG(INFO, PIPELINE, "%s: Configure pipeline with invalid "
> - "socket\n", __func__);
> - goto fail;
> + if (rte_eal_has_hugepages()) {
> + p = rte_pipeline_create(&pipeline_params_3);
> + if (p != NULL) {
> + RTE_LOG(INFO, PIPELINE, "%s: Configure pipeline with "
> + "invalid socket\n", __func__);
> + goto fail;
> + }
> }
>
> /* Check pipeline consistency */
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-stable] [PATCH v3 1/4] test: enable tests to run in no-huge mode
2020-03-13 8:16 ` [dpdk-stable] [PATCH v3 1/4] test: enable tests to run in no-huge mode Ruifeng Wang
2020-03-17 12:49 ` Aaron Conole
@ 2020-03-17 19:15 ` Wang, Yipeng1
1 sibling, 0 replies; 3+ messages in thread
From: Wang, Yipeng1 @ 2020-03-17 19:15 UTC (permalink / raw)
To: Ruifeng Wang, aconole, maicolgabriel, Richardson, Bruce, Ananyev,
Konstantin, Dumitrescu, Cristian, Gobriel, Sameh, Burakov,
Anatoly
Cc: dev, david.marchand, gavin.hu, honnappa.nagarahalli,
juraj.linkes, nd, stable
> -----Original Message-----
> From: Ruifeng Wang <ruifeng.wang@arm.com>
> Sent: Friday, March 13, 2020 1:16 AM
> To: aconole@redhat.com; maicolgabriel@hotmail.com; Richardson, Bruce
> <bruce.richardson@intel.com>; Ananyev, Konstantin
> <konstantin.ananyev@intel.com>; Dumitrescu, Cristian
> <cristian.dumitrescu@intel.com>; Wang, Yipeng1
> <yipeng1.wang@intel.com>; Gobriel, Sameh <sameh.gobriel@intel.com>
> Cc: dev@dpdk.org; david.marchand@redhat.com; Burakov, Anatoly
> <anatoly.burakov@intel.com>; gavin.hu@arm.com;
> honnappa.nagarahalli@arm.com; juraj.linkes@pantheon.tech; nd@arm.com;
> Ruifeng Wang <ruifeng.wang@arm.com>; stable@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@dpdk.org
>
> Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
> Reviewed-by: Gavin Hu <gavin.hu@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(¶m, &acl_param, sizeof(param));
> - param.socket_id = RTE_MAX_NUMA_NODES + 1;
> -
> - acx = rte_acl_create(¶m);
> - 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(¶m, &acl_param, sizeof(param));
> + param.socket_id = RTE_MAX_NUMA_NODES + 1;
> +
> + acx = rte_acl_create(¶m);
> + 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@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?
^ permalink raw reply [flat|nested] 3+ messages in thread