aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/rcupdate.c
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>2009-11-22 11:53:49 -0500
committerIngo Molnar <mingo@elte.hu>2009-11-22 12:58:16 -0500
commit9f680ab41485edfdc96331b70afa7513aa0a7720 (patch)
tree620b34f8129c0ea4ddee033c9875a9f60bfba2ae /kernel/rcupdate.c
parentb668c9cf3e58739dac54a1d6f42f2b4bdd980b3e (diff)
rcu: Eliminate unneeded function wrapping
The functions rcu_init() is a wrapper for __rcu_init(), and also sets up the CPU-hotplug notifier for rcu_barrier_cpu_hotplug(). But TINY_RCU doesn't need CPU-hotplug notification, and the rcu_barrier_cpu_hotplug() is a simple wrapper for rcu_cpu_notify(). So push rcu_init() out to kernel/rcutree.c and kernel/rcutiny.c and get rid of the wrapper function rcu_barrier_cpu_hotplug(). Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: laijs@cn.fujitsu.com Cc: dipankar@in.ibm.com Cc: mathieu.desnoyers@polymtl.ca Cc: josh@joshtriplett.org Cc: dvhltc@us.ibm.com Cc: niv@us.ibm.com Cc: peterz@infradead.org Cc: rostedt@goodmis.org Cc: Valdis.Kletnieks@vt.edu Cc: dhowells@redhat.com LKML-Reference: <12589088302320-git-send-email-> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/rcupdate.c')
-rw-r--r--kernel/rcupdate.c22
1 files changed, 0 insertions, 22 deletions
diff --git a/kernel/rcupdate.c b/kernel/rcupdate.c
index 7625f207f65e..eb6b534db318 100644
--- a/kernel/rcupdate.c
+++ b/kernel/rcupdate.c
@@ -161,28 +161,6 @@ EXPORT_SYMBOL_GPL(synchronize_rcu_bh);
161 161
162#endif /* #ifndef CONFIG_TINY_RCU */ 162#endif /* #ifndef CONFIG_TINY_RCU */
163 163
164static int __cpuinit rcu_barrier_cpu_hotplug(struct notifier_block *self,
165 unsigned long action, void *hcpu)
166{
167 return rcu_cpu_notify(self, action, hcpu);
168}
169
170void __init rcu_init(void)
171{
172 int i;
173
174 __rcu_init();
175 cpu_notifier(rcu_barrier_cpu_hotplug, 0);
176
177 /*
178 * We don't need protection against CPU-hotplug here because
179 * this is called early in boot, before either interrupts
180 * or the scheduler are operational.
181 */
182 for_each_online_cpu(i)
183 rcu_barrier_cpu_hotplug(NULL, CPU_UP_PREPARE, (void *)(long)i);
184}
185
186void rcu_scheduler_starting(void) 164void rcu_scheduler_starting(void)
187{ 165{
188 WARN_ON(num_online_cpus() != 1); 166 WARN_ON(num_online_cpus() != 1);