diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2013-03-21 17:49:58 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2013-04-08 11:39:28 -0400 |
commit | 99444202b924e916aad95073d23f9995ae8eb558 (patch) | |
tree | d66dea3a523408d2b27d75e8d36ca93cb7afc218 | |
parent | 52c0065947b7f78a3d9808b421006a3d870d1f92 (diff) |
score: Use generic idle loop
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Paul McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Reviewed-by: Cc: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: Lennox Wu <lennox.wu@gmail.com>
Link: http://lkml.kernel.org/r/20130321215235.147909863@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r-- | arch/score/Kconfig | 1 | ||||
-rw-r--r-- | arch/score/kernel/process.c | 18 |
2 files changed, 1 insertions, 18 deletions
diff --git a/arch/score/Kconfig b/arch/score/Kconfig index c8def8bc9020..eaac45de65be 100644 --- a/arch/score/Kconfig +++ b/arch/score/Kconfig | |||
@@ -11,6 +11,7 @@ config SCORE | |||
11 | select ARCH_DISCARD_MEMBLOCK | 11 | select ARCH_DISCARD_MEMBLOCK |
12 | select GENERIC_CPU_DEVICES | 12 | select GENERIC_CPU_DEVICES |
13 | select GENERIC_CLOCKEVENTS | 13 | select GENERIC_CLOCKEVENTS |
14 | select GENERIC_IDLE_LOOP | ||
14 | select HAVE_MOD_ARCH_SPECIFIC | 15 | select HAVE_MOD_ARCH_SPECIFIC |
15 | select VIRT_TO_BUS | 16 | select VIRT_TO_BUS |
16 | select MODULES_USE_ELF_REL | 17 | select MODULES_USE_ELF_REL |
diff --git a/arch/score/kernel/process.c b/arch/score/kernel/process.c index 79568466b578..f4c6d02421d3 100644 --- a/arch/score/kernel/process.c +++ b/arch/score/kernel/process.c | |||
@@ -41,24 +41,6 @@ void machine_halt(void) {} | |||
41 | /* If or when software machine-power-off is implemented, add code here. */ | 41 | /* If or when software machine-power-off is implemented, add code here. */ |
42 | void machine_power_off(void) {} | 42 | void machine_power_off(void) {} |
43 | 43 | ||
44 | /* | ||
45 | * The idle thread. There's no useful work to be | ||
46 | * done, so just try to conserve power and have a | ||
47 | * low exit latency (ie sit in a loop waiting for | ||
48 | * somebody to say that they'd like to reschedule) | ||
49 | */ | ||
50 | void __noreturn cpu_idle(void) | ||
51 | { | ||
52 | /* endless idle loop with no priority at all */ | ||
53 | while (1) { | ||
54 | rcu_idle_enter(); | ||
55 | while (!need_resched()) | ||
56 | barrier(); | ||
57 | rcu_idle_exit(); | ||
58 | schedule_preempt_disabled(); | ||
59 | } | ||
60 | } | ||
61 | |||
62 | void ret_from_fork(void); | 44 | void ret_from_fork(void); |
63 | void ret_from_kernel_thread(void); | 45 | void ret_from_kernel_thread(void); |
64 | 46 | ||