Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 43e903ad authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

rcu: Inline invoke_rcu_callbacks() into its sole remaining caller



This commit saves a few lines of code by inlining invoke_rcu_callbacks()
into its sole remaining caller.

Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
parent 0864f057
Loading
Loading
Loading
Loading
+3 −17
Original line number Diff line number Diff line
@@ -147,7 +147,6 @@ static void rcu_init_new_rnp(struct rcu_node *rnp_leaf);
static void rcu_cleanup_dead_rnp(struct rcu_node *rnp_leaf);
static void rcu_boost_kthread_setaffinity(struct rcu_node *rnp, int outgoingcpu);
static void invoke_rcu_core(void);
static void invoke_rcu_callbacks(struct rcu_data *rdp);
static void rcu_report_exp_rdp(struct rcu_data *rdp);
static void sync_sched_exp_online_cleanup(int cpu);

@@ -2296,8 +2295,9 @@ static __latent_entropy void rcu_core(void)
	rcu_check_gp_start_stall(rnp, rdp, rcu_jiffies_till_stall_check());

	/* If there are callbacks ready, invoke them. */
	if (rcu_segcblist_ready_cbs(&rdp->cblist))
		invoke_rcu_callbacks(rdp);
	if (rcu_segcblist_ready_cbs(&rdp->cblist) &&
	    likely(READ_ONCE(rcu_scheduler_fully_active)))
		rcu_do_batch(rdp);

	/* Do any needed deferred wakeups of rcuo kthreads. */
	do_nocb_deferred_wakeup(rdp);
@@ -2332,20 +2332,6 @@ static void invoke_rcu_core_kthread(void)
	local_irq_restore(flags);
}

/*
 * Do RCU callback invocation.  Not that if we are running !use_softirq,
 * we are already in the rcuc kthread.  If callbacks are offloaded, then
 * ->cblist is always empty, so we don't get here.  Therefore, we only
 * ever need to check for the scheduler being operational (some callbacks
 * do wakeups, so we do need the scheduler).
 */
static void invoke_rcu_callbacks(struct rcu_data *rdp)
{
	if (unlikely(!READ_ONCE(rcu_scheduler_fully_active)))
		return;
	rcu_do_batch(rdp);
}

/*
 * Wake up this CPU's rcuc kthread to do RCU core processing.
 */