[PATCH v3 0/3] rcu: Display registers of self-detected stall as far as possible

From: Zhen Lei
Date: Sat Jul 30 2022 - 06:24:31 EST


v2 --> v3:
1. Patch 1 Add trigger_single_cpu_backtrace(cpu) in synchronize_rcu_expedited_wait()
Subsequently, we can see that all callers of dump_cpu_task() try
trigger_single_cpu_backtrace() first. Then I do the cleanup in Patch 2.
2. Patch 3, as Paul E. McKenney's suggestion, push the code into dump_cpu_task().

For newcomers:
Currently, dump_cpu_task() is mainly used by RCU, in order to dump the
stack traces of the current task of the specified CPU when a rcu stall
is detected.

For architectures that do not support NMI interrupts, registers is not
printed when rcu stall is self-detected. This patch series improve it.


v2:
https://lkml.org/lkml/2022/7/27/1800

Zhen Lei (3):
rcu/exp: Use NMI to get the backtrace of cpu_curr(other_cpu) first
sched/debug: Try trigger_single_cpu_backtrace(cpu) in dump_cpu_task()
sched/debug: Show the registers of 'current' in dump_cpu_task()

kernel/rcu/tree_stall.h | 8 +++-----
kernel/sched/core.c | 14 ++++++++++++++
kernel/smp.c | 3 +--
3 files changed, 18 insertions(+), 7 deletions(-)

--
2.25.1