mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-09-20 19:51:42 +00:00
rcu: Remove #ifdef CONFIG_SMP from TREE_RCU
Now that both TINY_RCU and TINY_PREEMPT_RCU have been in place for awhile, it is time to remove UP support from TREE_RCU, which is what this commit does. Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
parent
5e1ee6e101
commit
27565d64a4
|
@ -301,8 +301,6 @@ static struct rcu_node *rcu_get_root(struct rcu_state *rsp)
|
||||||
return &rsp->node[0];
|
return &rsp->node[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_SMP
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If the specified CPU is offline, tell the caller that it is in
|
* If the specified CPU is offline, tell the caller that it is in
|
||||||
* a quiescent state. Otherwise, whack it with a reschedule IPI.
|
* a quiescent state. Otherwise, whack it with a reschedule IPI.
|
||||||
|
@ -339,8 +337,6 @@ static int rcu_implicit_offline_qs(struct rcu_data *rdp)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* #ifdef CONFIG_SMP */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* rcu_idle_enter_common - inform RCU that current CPU is moving towards idle
|
* rcu_idle_enter_common - inform RCU that current CPU is moving towards idle
|
||||||
*
|
*
|
||||||
|
@ -606,8 +602,6 @@ int rcu_is_cpu_rrupt_from_idle(void)
|
||||||
return __get_cpu_var(rcu_dynticks).dynticks_nesting <= 1;
|
return __get_cpu_var(rcu_dynticks).dynticks_nesting <= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_SMP
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Snapshot the specified CPU's dynticks counter so that we can later
|
* Snapshot the specified CPU's dynticks counter so that we can later
|
||||||
* credit them with an implicit quiescent state. Return 1 if this CPU
|
* credit them with an implicit quiescent state. Return 1 if this CPU
|
||||||
|
@ -651,8 +645,6 @@ static int rcu_implicit_dynticks_qs(struct rcu_data *rdp)
|
||||||
return rcu_implicit_offline_qs(rdp);
|
return rcu_implicit_offline_qs(rdp);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* #ifdef CONFIG_SMP */
|
|
||||||
|
|
||||||
static void record_gp_stall_check_time(struct rcu_state *rsp)
|
static void record_gp_stall_check_time(struct rcu_state *rsp)
|
||||||
{
|
{
|
||||||
rsp->gp_start = jiffies;
|
rsp->gp_start = jiffies;
|
||||||
|
@ -1517,8 +1509,6 @@ void rcu_check_callbacks(int cpu, int user)
|
||||||
trace_rcu_utilization("End scheduler-tick");
|
trace_rcu_utilization("End scheduler-tick");
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_SMP
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Scan the leaf rcu_node structures, processing dyntick state for any that
|
* Scan the leaf rcu_node structures, processing dyntick state for any that
|
||||||
* have not yet encountered a quiescent state, using the function specified.
|
* have not yet encountered a quiescent state, using the function specified.
|
||||||
|
@ -1641,15 +1631,6 @@ unlock_fqs_ret:
|
||||||
trace_rcu_utilization("End fqs");
|
trace_rcu_utilization("End fqs");
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* #ifdef CONFIG_SMP */
|
|
||||||
|
|
||||||
static void force_quiescent_state(struct rcu_state *rsp, int relaxed)
|
|
||||||
{
|
|
||||||
set_need_resched();
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* #else #ifdef CONFIG_SMP */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This does the RCU core processing work for the specified rcu_state
|
* This does the RCU core processing work for the specified rcu_state
|
||||||
* and rcu_data structures. This may be called only from the CPU to
|
* and rcu_data structures. This may be called only from the CPU to
|
||||||
|
|
|
@ -1858,16 +1858,6 @@ static void __cpuinit rcu_prepare_kthreads(int cpu)
|
||||||
|
|
||||||
#endif /* #else #ifdef CONFIG_RCU_BOOST */
|
#endif /* #else #ifdef CONFIG_RCU_BOOST */
|
||||||
|
|
||||||
#ifndef CONFIG_SMP
|
|
||||||
|
|
||||||
void synchronize_sched_expedited(void)
|
|
||||||
{
|
|
||||||
cond_resched();
|
|
||||||
}
|
|
||||||
EXPORT_SYMBOL_GPL(synchronize_sched_expedited);
|
|
||||||
|
|
||||||
#else /* #ifndef CONFIG_SMP */
|
|
||||||
|
|
||||||
static atomic_t sync_sched_expedited_started = ATOMIC_INIT(0);
|
static atomic_t sync_sched_expedited_started = ATOMIC_INIT(0);
|
||||||
static atomic_t sync_sched_expedited_done = ATOMIC_INIT(0);
|
static atomic_t sync_sched_expedited_done = ATOMIC_INIT(0);
|
||||||
|
|
||||||
|
@ -1982,8 +1972,6 @@ void synchronize_sched_expedited(void)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(synchronize_sched_expedited);
|
EXPORT_SYMBOL_GPL(synchronize_sched_expedited);
|
||||||
|
|
||||||
#endif /* #else #ifndef CONFIG_SMP */
|
|
||||||
|
|
||||||
#if !defined(CONFIG_RCU_FAST_NO_HZ)
|
#if !defined(CONFIG_RCU_FAST_NO_HZ)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in a new issue