rcu-tasks: Move synchronize_rcu_tasks_generic() down
This is strictly a code-motion commit that moves the synchronize_rcu_tasks_generic() down to where it can invoke rcu_tasks_one_gp() without the need for a forward declaration. Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
This commit is contained in:
parent
d96225fd09
commit
68cb47204d
@ -326,17 +326,6 @@ static void call_rcu_tasks_generic(struct rcu_head *rhp, rcu_callback_t func,
|
|||||||
irq_work_queue(&rtpcp->rtp_irq_work);
|
irq_work_queue(&rtpcp->rtp_irq_work);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Wait for a grace period for the specified flavor of Tasks RCU.
|
|
||||||
static void synchronize_rcu_tasks_generic(struct rcu_tasks *rtp)
|
|
||||||
{
|
|
||||||
/* Complain if the scheduler has not started. */
|
|
||||||
RCU_LOCKDEP_WARN(rcu_scheduler_active == RCU_SCHEDULER_INACTIVE,
|
|
||||||
"synchronize_rcu_tasks called too soon");
|
|
||||||
|
|
||||||
/* Wait for the grace period. */
|
|
||||||
wait_rcu_gp(rtp->call_func);
|
|
||||||
}
|
|
||||||
|
|
||||||
// RCU callback function for rcu_barrier_tasks_generic().
|
// RCU callback function for rcu_barrier_tasks_generic().
|
||||||
static void rcu_barrier_tasks_generic_cb(struct rcu_head *rhp)
|
static void rcu_barrier_tasks_generic_cb(struct rcu_head *rhp)
|
||||||
{
|
{
|
||||||
@ -558,6 +547,17 @@ static int __noreturn rcu_tasks_kthread(void *arg)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Wait for a grace period for the specified flavor of Tasks RCU.
|
||||||
|
static void synchronize_rcu_tasks_generic(struct rcu_tasks *rtp)
|
||||||
|
{
|
||||||
|
/* Complain if the scheduler has not started. */
|
||||||
|
RCU_LOCKDEP_WARN(rcu_scheduler_active == RCU_SCHEDULER_INACTIVE,
|
||||||
|
"synchronize_rcu_tasks called too soon");
|
||||||
|
|
||||||
|
/* Wait for the grace period. */
|
||||||
|
wait_rcu_gp(rtp->call_func);
|
||||||
|
}
|
||||||
|
|
||||||
/* Spawn RCU-tasks grace-period kthread. */
|
/* Spawn RCU-tasks grace-period kthread. */
|
||||||
static void __init rcu_spawn_tasks_kthread_generic(struct rcu_tasks *rtp)
|
static void __init rcu_spawn_tasks_kthread_generic(struct rcu_tasks *rtp)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user