On Sat, Aug 20, 2022 at 05:03:09PM +0200, Sander Vanheule wrote: > When the number of CPUs that can possibly be brought online is known at > boot time, e.g. when HOTPLUG is disabled, nr_cpu_ids may be smaller than > NR_CPUS. In that case, cpu_possible_mask would not be completely filled, > and cpumask_full(cpu_possible_mask) can return false for valid system > configurations. It doesn't mean we can just give up. You can check validity of possible cpumask like this: KUNIT_EXPECT_EQ(test, nr_cpu_ids, cpumask_first_zero(&mask_all)) KUNIT_EXPECT_EQ(test, NR_CPUS, cpumask_first(&mask_all)) > Fixes: c41e8866c28c ("lib/test: introduce cpumask KUnit test suite") > Link: https://lore.kernel.org/lkml/346cb279-8e75-24b0-7d12-9803f2b41c73@xxxxxxxxxx/ > Reported-by: Maíra Canal <mairacanal@xxxxxxxxxx> > Signed-off-by: Sander Vanheule <sander@xxxxxxxxxxxxx> > Tested-by: Maíra Canal <mairacanal@xxxxxxxxxx> > Reviewed-by: David Gow <davidgow@xxxxxxxxxx> > --- > Changes in v2: > Rewrite commit message to explain why this test is wrong > > lib/test_cpumask.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/lib/test_cpumask.c b/lib/test_cpumask.c > index a31a1622f1f6..4ebf9f5805f3 100644 > --- a/lib/test_cpumask.c > +++ b/lib/test_cpumask.c > @@ -54,7 +54,6 @@ static cpumask_t mask_all; > static void test_cpumask_weight(struct kunit *test) > { > KUNIT_EXPECT_TRUE(test, cpumask_empty(&mask_empty)); > - KUNIT_EXPECT_TRUE(test, cpumask_full(cpu_possible_mask)); > KUNIT_EXPECT_TRUE(test, cpumask_full(&mask_all)); > > KUNIT_EXPECT_EQ(test, 0, cpumask_weight(&mask_empty)); > -- > 2.37.2