refscale: Correct affinity check

The current affinity check works fine until there are more reader
processes than CPUs, at which point the affinity check is looking for
non-existent CPUs.  This commit therefore applies the same modulus to
the check as is present in the set_cpus_allowed_ptr() call.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Reviewed-by: Neeraj Upadhyay <Neeraj.Upadhyay@amd.com>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
This commit is contained in:
Paul E. McKenney 2024-10-09 11:02:51 -07:00 committed by Frederic Weisbecker
parent 32693634cd
commit 046c06f5ba

View File

@ -829,7 +829,7 @@ ref_scale_reader(void *arg)
goto end;
// Make sure that the CPU is affinitized appropriately during testing.
WARN_ON_ONCE(raw_smp_processor_id() != me);
WARN_ON_ONCE(raw_smp_processor_id() != me % nr_cpu_ids);
WRITE_ONCE(rt->start_reader, 0);
if (!atomic_dec_return(&n_started))