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

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

rcu: Shrink TINY_RCU by reworking CPU-stall ifdefs



TINY_RCU's reset_cpu_stall_ticks() and check_cpu_stalls() functions
are defined unconditionally, and are empty functions if CONFIG_RCU_TRACE
is disabled (which in turns disables detection of RCU CPU stalls).
This commit saves a few lines of source code by defining these functions
only if CONFIG_RCU_TRACE=y.

Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
parent 2439b696
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -204,7 +204,7 @@ static int rcu_is_cpu_rrupt_from_idle(void)
 */
static int rcu_qsctr_help(struct rcu_ctrlblk *rcp)
{
	reset_cpu_stall_ticks(rcp);
	RCU_TRACE(reset_cpu_stall_ticks(rcp));
	if (rcp->rcucblist != NULL &&
	    rcp->donetail != rcp->curtail) {
		rcp->donetail = rcp->curtail;
@@ -251,7 +251,7 @@ void rcu_bh_qs(int cpu)
 */
void rcu_check_callbacks(int cpu, int user)
{
	check_cpu_stalls();
	RCU_TRACE(check_cpu_stalls());
	if (user || rcu_is_cpu_rrupt_from_idle())
		rcu_sched_qs(cpu);
	else if (!in_softirq())
+2 −4
Original line number Diff line number Diff line
@@ -158,15 +158,11 @@ static void check_cpu_stall(struct rcu_ctrlblk *rcp)
		rcp->jiffies_stall = jiffies + rcu_jiffies_till_stall_check();
}

#endif /* #ifdef CONFIG_RCU_TRACE */

static void reset_cpu_stall_ticks(struct rcu_ctrlblk *rcp)
{
#ifdef CONFIG_RCU_TRACE
	rcp->ticks_this_gp = 0;
	rcp->gp_start = jiffies;
	rcp->jiffies_stall = jiffies + rcu_jiffies_till_stall_check();
#endif /* #ifdef CONFIG_RCU_TRACE */
}

static void check_cpu_stalls(void)
@@ -174,3 +170,5 @@ static void check_cpu_stalls(void)
	RCU_TRACE(check_cpu_stall(&rcu_bh_ctrlblk));
	RCU_TRACE(check_cpu_stall(&rcu_sched_ctrlblk));
}

#endif /* #ifdef CONFIG_RCU_TRACE */