diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2008-06-09 14:59:53 (GMT) |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-06-10 13:52:01 (GMT) |
commit | 6ddd2a27948f0bd02a2ad001e8a6816898eba0dc (patch) | |
tree | 4a9a8b4d1186bb5a03df6c26f23d4a4a8ba6f7bd /arch/x86/kernel/process_32.c | |
parent | 9e26d84273541a8c6c2efb705457ca8e6245fb73 (diff) | |
download | linux-fsl-qoriq-6ddd2a27948f0bd02a2ad001e8a6816898eba0dc.tar.xz |
x86: simplify idle selection
default_idle is selected in cpu_idle(), when no other idle routine is
selected. Select it in select_idle_routine() when mwait is not
selected.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/process_32.c')
-rw-r--r-- | arch/x86/kernel/process_32.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c index f8476df..ee4ab46 100644 --- a/arch/x86/kernel/process_32.c +++ b/arch/x86/kernel/process_32.c @@ -168,24 +168,19 @@ void cpu_idle(void) while (1) { tick_nohz_stop_sched_tick(); while (!need_resched()) { - void (*idle)(void); check_pgt_cache(); rmb(); - idle = pm_idle; if (rcu_pending(cpu)) rcu_check_callbacks(cpu, 0); - if (!idle) - idle = default_idle; - if (cpu_is_offline(cpu)) play_dead(); local_irq_disable(); __get_cpu_var(irq_stat).idle_timestamp = jiffies; - idle(); + pm_idle(); } tick_nohz_restart_sched_tick(); preempt_enable_no_resched(); |