rcu/tree: Add a trace event for RCU CPU stall warnings
authorSangmoon Kim <sangmoon.kim@samsung.com>
Tue, 2 Mar 2021 11:55:15 +0000 (20:55 +0900)
committerPaul E. McKenney <paulmck@kernel.org>
Mon, 15 Mar 2021 20:53:24 +0000 (13:53 -0700)
commit565cfb9e64dac1aadf7e2130fcda19a1c018df66
tree07a85851e876c0cb1b270e51f6677c5fa9e44180
parent7e937220afa3eada0d4611b31e4e3c60770e39b4
rcu/tree: Add a trace event for RCU CPU stall warnings

This commit adds a trace event which allows tracing the beginnings of RCU
CPU stall warnings on systems where sysctl_panic_on_rcu_stall is disabled.

The first parameter is the name of RCU flavor like other trace events.
The second parameter indicates whether this is a stall of an expedited
grace period, a self-detected stall of a normal grace period, or a stall
of a normal grace period detected by some CPU other than the one that
is stalled.

RCU CPU stall warnings are often caused by external-to-RCU issues,
for example, in interrupt handling or task scheduling.  Therefore,
this event uses TRACE_EVENT, not TRACE_EVENT_RCU, to avoid requiring
those interested in tracing RCU CPU stalls to rebuild their kernels
with CONFIG_RCU_TRACE=y.

Reviewed-by: Uladzislau Rezki (Sony) <urezki@gmail.com>
Reviewed-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Signed-off-by: Sangmoon Kim <sangmoon.kim@samsung.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
include/trace/events/rcu.h
kernel/rcu/tree_exp.h
kernel/rcu/tree_stall.h