Re: [PATCH 5/5] cpumask: fix comment of cpumask_xxx
From: Linus Torvalds
Date: Mon Mar 06 2023 - 12:30:36 EST
On Mon, Mar 6, 2023 at 8:07 AM Vernon Yang <vernon2gm@xxxxxxxxx> wrote:
>
> After commit 596ff4a09b89 ("cpumask: re-introduce constant-sized cpumask
> optimizations"), the cpumask size is divided into three different case,
> so fix comment of cpumask_xxx correctly.
No no.
Those three cases are meant to be entirely internal optimizations.
They are literally just "preferred sizes".
The correct thing to do is always that
* Returns >= nr_cpu_ids if no cpus set.
because nr_cpu_ids is always the *smallest* of the access sizes.
That's exactly why it's a ">=". The CPU mask stuff has always
historically potentially used a different size than the actual
nr_cpu_ids, in that it could do word-sized scans even when the machine
might only have a smaller set of CPUs.
So the whole "small" vs "large" should be seen entirely internal to
cpumask.h. We should not expose it outside (sadly, that already
happened with "nr_cpumask_size", which also was that kind of thing.
So no, this patch is wrong. If anything, the comments should be strengthened.
Of course, right now Guenter seems to be reporting a problem with that
optimization, so unless I figure out what is going on I'll just need
to revert it anyway.
Linus
Linus