summaryrefslogtreecommitdiff
path: root/lib/test_cpumask.c
diff options
context:
space:
mode:
authorSander Vanheule <sander@svanheule.net>2022-07-02 19:08:25 +0300
committerakpm <akpm@linux-foundation.org>2022-07-18 03:31:41 +0300
commitb81dce77cedcea6f00292f02d4b1ebbfc2c5988d (patch)
tree1b8f5a819bfcf58de29dc1a31301dc5893056a86 /lib/test_cpumask.c
parent4f09903078eeb9138cddce8db06100b82f8620e8 (diff)
downloadlinux-b81dce77cedcea6f00292f02d4b1ebbfc2c5988d.tar.xz
cpumask: Fix invalid uniprocessor mask assumption
On uniprocessor builds, any CPU mask is assumed to contain exactly one CPU (cpu0). This assumption ignores the existence of empty masks, resulting in incorrect behaviour. cpumask_first_zero(), cpumask_next_zero(), and for_each_cpu_not() don't provide behaviour matching the assumption that a UP mask is always "1", and instead provide behaviour matching the empty mask. Drop the incorrectly optimised code and use the generic implementations in all cases. Link: https://lkml.kernel.org/r/86bf3f005abba2d92120ddd0809235cab4f759a6.1656777646.git.sander@svanheule.net Signed-off-by: Sander Vanheule <sander@svanheule.net> Suggested-by: Yury Norov <yury.norov@gmail.com> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Dave Hansen <dave.hansen@linux.intel.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Marco Elver <elver@google.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Valentin Schneider <vschneid@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'lib/test_cpumask.c')
0 files changed, 0 insertions, 0 deletions