diff options
author | Matias Elo <matias.elo@nokia.com> | 2021-12-03 11:13:31 +0200 |
---|---|---|
committer | Petri Savolainen <petri.savolainen@nokia.com> | 2021-12-08 09:50:17 +0200 |
commit | 5bcd3c3853fdd5aea88afa173451d85f4dad820a (patch) | |
tree | 2043f769465b7be73a053911292eca4128fec64a /test/validation/api/cpumask | |
parent | 38184a1df1455203be755c851775869eaba0a46e (diff) |
validation: cpumask: add new check for default control/worker masks
Add new check which requests a large control/worker CPU mask and validates
that the returned mask is smaller or equal than the mask previously
returned when 'num' was zero.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
Diffstat (limited to 'test/validation/api/cpumask')
-rw-r--r-- | test/validation/api/cpumask/cpumask.c | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/test/validation/api/cpumask/cpumask.c b/test/validation/api/cpumask/cpumask.c index eb131a142..0983bb4b5 100644 --- a/test/validation/api/cpumask/cpumask.c +++ b/test/validation/api/cpumask/cpumask.c @@ -1,4 +1,5 @@ /* Copyright (c) 2015-2018, Linaro Limited + * Copyright (c) 2021, Nokia * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause @@ -14,9 +15,9 @@ static void cpumask_test_odp_cpumask_def_control(void) { - unsigned num; - unsigned mask_count; - unsigned max_cpus = mask_capacity(); + unsigned int num, max_num; + unsigned int mask_count; + unsigned int max_cpus = mask_capacity(); odp_cpumask_t mask; num = odp_cpumask_default_control(&mask, ALL_AVAILABLE); @@ -25,13 +26,21 @@ static void cpumask_test_odp_cpumask_def_control(void) CU_ASSERT(mask_count == num); CU_ASSERT(num > 0); CU_ASSERT(num <= max_cpus); + + max_num = odp_cpumask_default_control(&mask, max_cpus); + mask_count = odp_cpumask_count(&mask); + + CU_ASSERT(max_num > 0); + CU_ASSERT(max_num == mask_count); + CU_ASSERT(max_num <= max_cpus); + CU_ASSERT(max_num <= num); } static void cpumask_test_odp_cpumask_def_worker(void) { - unsigned num; - unsigned mask_count; - unsigned max_cpus = mask_capacity(); + unsigned int num, max_num; + unsigned int mask_count; + unsigned int max_cpus = mask_capacity(); odp_cpumask_t mask; num = odp_cpumask_default_worker(&mask, ALL_AVAILABLE); @@ -40,6 +49,14 @@ static void cpumask_test_odp_cpumask_def_worker(void) CU_ASSERT(mask_count == num); CU_ASSERT(num > 0); CU_ASSERT(num <= max_cpus); + + max_num = odp_cpumask_default_worker(&mask, max_cpus); + mask_count = odp_cpumask_count(&mask); + + CU_ASSERT(max_num > 0); + CU_ASSERT(max_num == mask_count); + CU_ASSERT(max_num <= max_cpus); + CU_ASSERT(max_num <= num); } static void cpumask_test_odp_cpumask_def(void) |