summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2012-05-07 17:59:48 +0000
committerThomas Gleixner <tglx@linutronix.de>2012-05-08 12:35:06 +0200
commit4a1625133d4faaefcec0dc175941f49b186918d9 (patch)
treeabefd7c7b1332ae9ef6a10ffd77790b2a01aa98e
parentf37f435f33717dcf15fd4bb422da739da7fc2052 (diff)
downloadlinux-stable-4a1625133d4faaefcec0dc175941f49b186918d9.tar.gz
linux-stable-4a1625133d4faaefcec0dc175941f49b186918d9.tar.bz2
linux-stable-4a1625133d4faaefcec0dc175941f49b186918d9.zip
cpuidle: Use kick_all_cpus_sync()
kick_all_cpus_sync() is the core implementation of cpu_idle_wait() which is copied all over the arch code. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/20120507175652.119842173@linutronix.de
-rw-r--r--drivers/cpuidle/cpuidle.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c
index 2f0083a51a9a..d90519cec880 100644
--- a/drivers/cpuidle/cpuidle.c
+++ b/drivers/cpuidle/cpuidle.c
@@ -40,17 +40,6 @@ void disable_cpuidle(void)
off = 1;
}
-#if defined(CONFIG_ARCH_HAS_CPU_IDLE_WAIT)
-static void cpuidle_kick_cpus(void)
-{
- cpu_idle_wait();
-}
-#elif defined(CONFIG_SMP)
-# error "Arch needs cpu_idle_wait() equivalent here"
-#else /* !CONFIG_ARCH_HAS_CPU_IDLE_WAIT && !CONFIG_SMP */
-static void cpuidle_kick_cpus(void) {}
-#endif
-
static int __cpuidle_register_device(struct cpuidle_device *dev);
static inline int cpuidle_enter(struct cpuidle_device *dev,
@@ -186,7 +175,7 @@ void cpuidle_uninstall_idle_handler(void)
{
if (enabled_devices) {
initialized = 0;
- cpuidle_kick_cpus();
+ kick_all_cpus_sync();
}
}