rcu-tasks: Split rcu_tasks_one_gp() from rcu_tasks_kthread()
authorPaul E. McKenney <paulmck@kernel.org>
Tue, 19 Apr 2022 17:47:28 +0000 (10:47 -0700)
committerPaul E. McKenney <paulmck@kernel.org>
Mon, 20 Jun 2022 16:22:26 +0000 (09:22 -0700)
commitd96225fd09ffb3a6424cebe01c8b1e1bddc30f07
tree311f443b08ad9491c08bc866cf556751bf87eb7b
parent4cf0585c4d663654fefa0b359f1908b5cd72802b
rcu-tasks: Split rcu_tasks_one_gp() from rcu_tasks_kthread()

This commit abstracts most of the rcu_tasks_kthread() function's loop
body into a new rcu_tasks_one_gp() function.  It also introduces
a new ->tasks_gp_mutex to synchronize concurrent calls to this new
rcu_tasks_one_gp() function.  This commit is preparation for allowing
RCU tasks grace periods to be driven by the calling task during the
mid-boot dead zone.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
kernel/rcu/tasks.h