rcu-tasks: Make RCU Tasks Trace make use of RCU scheduler hooks
authorPaul E. McKenney <paulmck@kernel.org>
Tue, 17 Mar 2020 03:38:29 +0000 (20:38 -0700)
committerPaul E. McKenney <paulmck@kernel.org>
Mon, 27 Apr 2020 18:03:52 +0000 (11:03 -0700)
commit43766c3eadcf6033c92eb953f88801aebac0f785
tree3b0c7faa6e1ba5202d9b3f10a076953bea212b20
parentaf051ca4e4231fcf5f366e28453ac28208bb36c6
rcu-tasks: Make RCU Tasks Trace make use of RCU scheduler hooks

This commit makes the calls to rcu_tasks_qs() detect and report
quiescent states for RCU tasks trace.  If the task is in a quiescent
state and if ->trc_reader_checked is not yet set, the task sets its own
->trc_reader_checked.  This will cause the grace-period kthread to
remove it from the holdout list if it still remains there.

[ paulmck: Fix conditional compilation per kbuild test robot feedback. ]
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
include/linux/rcupdate.h
include/linux/rcutiny.h
kernel/rcu/tasks.h
kernel/rcu/tree_plugin.h