aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/kernel/process.c')
-rw-r--r--arch/arm/kernel/process.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
index 782af3cb213f..5d6e6523598b 100644
--- a/arch/arm/kernel/process.c
+++ b/arch/arm/kernel/process.c
@@ -16,7 +16,6 @@
16#include <linux/mm.h> 16#include <linux/mm.h>
17#include <linux/stddef.h> 17#include <linux/stddef.h>
18#include <linux/unistd.h> 18#include <linux/unistd.h>
19#include <linux/ptrace.h>
20#include <linux/slab.h> 19#include <linux/slab.h>
21#include <linux/user.h> 20#include <linux/user.h>
22#include <linux/a.out.h> 21#include <linux/a.out.h>
@@ -28,6 +27,7 @@
28#include <linux/cpu.h> 27#include <linux/cpu.h>
29#include <linux/elfcore.h> 28#include <linux/elfcore.h>
30#include <linux/pm.h> 29#include <linux/pm.h>
30#include <linux/tick.h>
31 31
32#include <asm/leds.h> 32#include <asm/leds.h>
33#include <asm/processor.h> 33#include <asm/processor.h>
@@ -160,9 +160,11 @@ void cpu_idle(void)
160 if (!idle) 160 if (!idle)
161 idle = default_idle; 161 idle = default_idle;
162 leds_event(led_idle_start); 162 leds_event(led_idle_start);
163 tick_nohz_stop_sched_tick();
163 while (!need_resched()) 164 while (!need_resched())
164 idle(); 165 idle();
165 leds_event(led_idle_end); 166 leds_event(led_idle_end);
167 tick_nohz_restart_sched_tick();
166 preempt_enable_no_resched(); 168 preempt_enable_no_resched();
167 schedule(); 169 schedule();
168 preempt_disable(); 170 preempt_disable();