process.c (2bbb6817c0ac1b5f2a68d720f364f98eeb1ac4fd) process.c (1268fbc746ea1cd279886a740dcbad4ba5232225)
1/*
2 * linux/arch/arm/kernel/process.c
3 *
4 * Copyright (C) 1996-2000 Russell King - Converted to ARM.
5 * Original Copyright (C) 1995 Linus Torvalds
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 169 unchanged lines hidden (view full) ---

178 * is that we always respect 'hlt_counter' to prevent low power idle.
179 */
180void cpu_idle(void)
181{
182 local_fiq_enable();
183
184 /* endless idle loop with no priority at all */
185 while (1) {
1/*
2 * linux/arch/arm/kernel/process.c
3 *
4 * Copyright (C) 1996-2000 Russell King - Converted to ARM.
5 * Original Copyright (C) 1995 Linus Torvalds
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 169 unchanged lines hidden (view full) ---

178 * is that we always respect 'hlt_counter' to prevent low power idle.
179 */
180void cpu_idle(void)
181{
182 local_fiq_enable();
183
184 /* endless idle loop with no priority at all */
185 while (1) {
186 tick_nohz_idle_enter_norcu();
186 tick_nohz_idle_enter();
187 rcu_idle_enter();
187 leds_event(led_idle_start);
188 while (!need_resched()) {
189#ifdef CONFIG_HOTPLUG_CPU
190 if (cpu_is_offline(smp_processor_id()))
191 cpu_die();
192#endif
193
194 local_irq_disable();

--- 13 unchanged lines hidden (view full) ---

208 * functions should always return with IRQs
209 * enabled.
210 */
211 WARN_ON(irqs_disabled());
212 local_irq_enable();
213 }
214 }
215 leds_event(led_idle_end);
188 leds_event(led_idle_start);
189 while (!need_resched()) {
190#ifdef CONFIG_HOTPLUG_CPU
191 if (cpu_is_offline(smp_processor_id()))
192 cpu_die();
193#endif
194
195 local_irq_disable();

--- 13 unchanged lines hidden (view full) ---

209 * functions should always return with IRQs
210 * enabled.
211 */
212 WARN_ON(irqs_disabled());
213 local_irq_enable();
214 }
215 }
216 leds_event(led_idle_end);
216 tick_nohz_idle_exit_norcu();
217 rcu_idle_exit();
218 tick_nohz_idle_exit();
217 preempt_enable_no_resched();
218 schedule();
219 preempt_disable();
220 }
221}
222
223static char reboot_mode = 'h';
224

--- 290 unchanged lines hidden ---
219 preempt_enable_no_resched();
220 schedule();
221 preempt_disable();
222 }
223}
224
225static char reboot_mode = 'h';
226

--- 290 unchanged lines hidden ---