[tip: core/rcu] scftorture: Add debug output for wrong-CPU warning

From: tip-bot2 for Paul E. McKenney
Date: Mon Feb 15 2021 - 09:58:07 EST


The following commit has been merged into the core/rcu branch of tip:

Commit-ID: f3ea978b712f768a02137e867aced5bfdcea670e
Gitweb: https://git.kernel.org/tip/f3ea978b712f768a02137e867aced5bfdcea670e
Author: Paul E. McKenney <paulmck@xxxxxxxxxx>
AuthorDate: Wed, 11 Nov 2020 10:12:05 -08:00
Committer: Paul E. McKenney <paulmck@xxxxxxxxxx>
CommitterDate: Mon, 04 Jan 2021 13:53:41 -08:00

scftorture: Add debug output for wrong-CPU warning

This commit adds the desired CPU, the actual CPU, and nr_cpu_ids to
the wrong-CPU warning in scftorture_invoker(), the better to help with
debugging.

Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
---
kernel/scftorture.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/kernel/scftorture.c b/kernel/scftorture.c
index d55a9f8..2377cbb 100644
--- a/kernel/scftorture.c
+++ b/kernel/scftorture.c
@@ -398,6 +398,7 @@ static void scftorture_invoke_one(struct scf_statistics *scfp, struct torture_ra
static int scftorture_invoker(void *arg)
{
int cpu;
+ int curcpu;
DEFINE_TORTURE_RANDOM(rand);
struct scf_statistics *scfp = (struct scf_statistics *)arg;
bool was_offline = false;
@@ -412,7 +413,10 @@ static int scftorture_invoker(void *arg)
VERBOSE_SCFTORTOUT("scftorture_invoker %d: Waiting for all SCF torturers from cpu %d", scfp->cpu, smp_processor_id());

// Make sure that the CPU is affinitized appropriately during testing.
- WARN_ON_ONCE(smp_processor_id() != scfp->cpu);
+ curcpu = smp_processor_id();
+ WARN_ONCE(curcpu != scfp->cpu % nr_cpu_ids,
+ "%s: Wanted CPU %d, running on %d, nr_cpu_ids = %d\n",
+ __func__, scfp->cpu, curcpu, nr_cpu_ids);

if (!atomic_dec_return(&n_started))
while (atomic_read_acquire(&n_started)) {