Skip to content

Commit 2488a5e

Browse files
laijspaulmckrcu
authored andcommitted
rcu: Fix tracepoint tracking RCU CPU kthread utilization
In the call to trace_rcu_utilization() at the start of the loop in rcu_cpu_kthread(), "rcu_wait" is incorrect, plus this trace event needs to be hoisted above the loop to balance with either the "rcu_wait" or "rcu_yield", depending on how the loop exits. This commit therefore makes these changes. Signed-off-by: Lai Jiangshan <[email protected]> Signed-off-by: Lai Jiangshan <[email protected]> Signed-off-by: Paul E. McKenney <[email protected]>
1 parent 822175e commit 2488a5e

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

kernel/rcu/tree.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2474,8 +2474,8 @@ static void rcu_cpu_kthread(unsigned int cpu)
24742474
char work, *workp = this_cpu_ptr(&rcu_data.rcu_cpu_has_work);
24752475
int spincnt;
24762476

2477+
trace_rcu_utilization(TPS("Start CPU kthread@rcu_run"));
24772478
for (spincnt = 0; spincnt < 10; spincnt++) {
2478-
trace_rcu_utilization(TPS("Start CPU kthread@rcu_wait"));
24792479
local_bh_disable();
24802480
*statusp = RCU_KTHREAD_RUNNING;
24812481
local_irq_disable();

0 commit comments

Comments
 (0)