Re: [PATCH] rcu: Correct cpu offline trace in rcutree_dying_cpu

From: Neeraj Upadhyay
Date: Wed Jan 13 2021 - 00:12:40 EST




On 1/12/2021 11:01 PM, Paul E. McKenney wrote:
On Mon, Jan 11, 2021 at 05:15:58PM +0530, Neeraj Upadhyay wrote:
Correctly trace whether the outgoing cpu blocks current gp in
rcutree_dying_cpu().

Signed-off-by: Neeraj Upadhyay <neeraju@xxxxxxxxxxxxxx>

Good catch, queued, thank you! Please see below for my usual
wordsmithing, and please lat me know if I messed something up.

Thanx, Paul


Thanks Paul, looks good!


Thanks
Neeraj

------------------------------------------------------------------------

commit ab6e7609e7590e1bb220ef6b0822a823dde46f6c
Author: Neeraj Upadhyay <neeraju@xxxxxxxxxxxxxx>
Date: Mon Jan 11 17:15:58 2021 +0530

rcu: Fix CPU-offline trace in rcutree_dying_cpu
The condition in the trace_rcu_grace_period() in rcutree_dying_cpu() is
backwards, so that it uses the string "cpuofl" when the offline CPU is
blocking the current grace period and "cpuofl-bgp" otherwise. Given that
the "-bgp" stands for "blocking grace period", this is at best misleading.
This commit therefore switches these strings in order to correctly trace
whether the outgoing cpu blocks the current grace period.
Signed-off-by: Neeraj Upadhyay <neeraju@xxxxxxxxxxxxxx>
Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>

diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index cc6b6fc..63c6dba 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -2387,7 +2387,7 @@ int rcutree_dying_cpu(unsigned int cpu)
blkd = !!(rnp->qsmask & rdp->grpmask);
trace_rcu_grace_period(rcu_state.name, READ_ONCE(rnp->gp_seq),
- blkd ? TPS("cpuofl") : TPS("cpuofl-bgp"));
+ blkd ? TPS("cpuofl-bgp") : TPS("cpuofl"));
return 0;
}


--
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, hosted by The Linux Foundation