cpu_possible_mask is not necessarily completely filled. That means
running a check on cpumask_full() doesn't make sense, so drop the test.
Fixes: c41e8866c28c ("lib/test: introduce cpumask KUnit test suite")
Link: https://lore.kernel.org/lkml/346cb279-8e75-24b0-7d12-9803f2b41c73@riseup.net/
Reported-by: Maíra Canal <mairacanal@riseup.net>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
Cc: David Gow <davidgow@google.com>
---
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.1
On Wed, Aug 10, 2022 at 2:09 AM Sander Vanheule <sander@svanheule.net> wrote:
>
> cpu_possible_mask is not necessarily completely filled. That means
> running a check on cpumask_full() doesn't make sense, so drop the test.
>
> Fixes: c41e8866c28c ("lib/test: introduce cpumask KUnit test suite")
> Link: https://lore.kernel.org/lkml/346cb279-8e75-24b0-7d12-9803f2b41c73@riseup.net/
> Reported-by: Maíra Canal <mairacanal@riseup.net>
> Signed-off-by: Sander Vanheule <sander@svanheule.net>
> Cc: David Gow <davidgow@google.com>
> ---
Looks good to me. It'd maybe be worth noting _why_ cpu_possible_mask
is not always filled (i.e., that the number of available CPUs might
not match the maximum number of CPUs the kernel is built to support),
but it's probably not worth doing a new version of the patch series
just for that.
Reviewed-by: David Gow <davidgow@google.com>
Cheers,
-- David
> 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.1
>
Hi David,
On Wed, 2022-08-10 at 12:06 +0800, David Gow wrote:
> On Wed, Aug 10, 2022 at 2:09 AM Sander Vanheule <sander@svanheule.net> wrote:
> >
> > cpu_possible_mask is not necessarily completely filled. That means
> > running a check on cpumask_full() doesn't make sense, so drop the test.
> >
> > Fixes: c41e8866c28c ("lib/test: introduce cpumask KUnit test suite")
> > Link: https://lore.kernel.org/lkml/346cb279-8e75-24b0-7d12-9803f2b41c73@riseup.net/
> > Reported-by: Maíra Canal <mairacanal@riseup.net>
> > Signed-off-by: Sander Vanheule <sander@svanheule.net>
> > Cc: David Gow <davidgow@google.com>
> > ---
>
> Looks good to me. It'd maybe be worth noting _why_ cpu_possible_mask
> is not always filled (i.e., that the number of available CPUs might
> not match the maximum number of CPUs the kernel is built to support),
> but it's probably not worth doing a new version of the patch series
> just for that.
>
> Reviewed-by: David Gow <davidgow@google.com>
Thanks for the reviews!
Perhaps the commit message could be replaced by:
"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) may return false for valid system
configurations."
Best,
Sander
>
> Cheers,
> -- David
>
>
> > 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.1
> >
On Wed, Aug 10, 2022 at 4:45 PM Sander Vanheule <sander@svanheule.net> wrote:
>
> Hi David,
>
> On Wed, 2022-08-10 at 12:06 +0800, David Gow wrote:
> > On Wed, Aug 10, 2022 at 2:09 AM Sander Vanheule <sander@svanheule.net> wrote:
> > >
> > > cpu_possible_mask is not necessarily completely filled. That means
> > > running a check on cpumask_full() doesn't make sense, so drop the test.
> > >
> > > Fixes: c41e8866c28c ("lib/test: introduce cpumask KUnit test suite")
> > > Link: https://lore.kernel.org/lkml/346cb279-8e75-24b0-7d12-9803f2b41c73@riseup.net/
> > > Reported-by: Maíra Canal <mairacanal@riseup.net>
> > > Signed-off-by: Sander Vanheule <sander@svanheule.net>
> > > Cc: David Gow <davidgow@google.com>
> > > ---
> >
> > Looks good to me. It'd maybe be worth noting _why_ cpu_possible_mask
> > is not always filled (i.e., that the number of available CPUs might
> > not match the maximum number of CPUs the kernel is built to support),
> > but it's probably not worth doing a new version of the patch series
> > just for that.
> >
> > Reviewed-by: David Gow <davidgow@google.com>
>
> Thanks for the reviews!
>
> Perhaps the commit message could be replaced by:
>
> "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) may return false for valid system
> configurations."
>
Sounds good to me! Thanks!
-- David
On 8/9/22 15:08, Sander Vanheule wrote:
> cpu_possible_mask is not necessarily completely filled. That means
> running a check on cpumask_full() doesn't make sense, so drop the test.
>
> Fixes: c41e8866c28c ("lib/test: introduce cpumask KUnit test suite")
> Link: https://lore.kernel.org/lkml/346cb279-8e75-24b0-7d12-9803f2b41c73@riseup.net/
> Reported-by: Maíra Canal <mairacanal@riseup.net>
> Signed-off-by: Sander Vanheule <sander@svanheule.net>
Tested-by: Maíra Canal <mairacanal@riseup.net>
> Cc: David Gow <davidgow@google.com>
> ---
> 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));
Hi Maíra,
On Tue, 2022-08-09 at 19:26 -0300, Maíra Canal wrote:
> On 8/9/22 15:08, Sander Vanheule wrote:
> > cpu_possible_mask is not necessarily completely filled. That means
> > running a check on cpumask_full() doesn't make sense, so drop the test.
> >
> > Fixes: c41e8866c28c ("lib/test: introduce cpumask KUnit test suite")
> > Link: https://lore.kernel.org/lkml/346cb279-8e75-24b0-7d12-9803f2b41c73@riseup.net/
> > Reported-by: Maíra Canal <mairacanal@riseup.net>
> > Signed-off-by: Sander Vanheule <sander@svanheule.net>
>
> Tested-by: Maíra Canal <mairacanal@riseup.net>
Thanks for testing again, and sorry for the trouble!
Best,
Sander
>
> > Cc: David Gow <davidgow@google.com>
> > ---
> > 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));
© 2016 - 2026 Red Hat, Inc.