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

Zhen Lei posted 3 patches 3 years, 8 months ago
There is a newer version of this series
kernel/rcu/tree_stall.h |  8 +++-----
kernel/sched/core.c     | 14 ++++++++++++++
kernel/smp.c            |  3 +--
3 files changed, 18 insertions(+), 7 deletions(-)
[PATCH v3 0/3] rcu: Display registers of self-detected stall as far as possible
Posted by Zhen Lei 3 years, 8 months ago
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