idle: Enable interrupts in the weak arch_cpu_idle() implementation
authorJames Bottomley <JBottomley@Parallels.com>
Wed, 8 May 2013 21:05:34 +0000 (14:05 -0700)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 14 Jun 2013 21:01:05 +0000 (23:01 +0200)
PARISC bootup triggers the warning at kernel/cpu/idle.c:96. That's
caused by the weak arch_cpu_idle() implementation, which is provided
to avoid that architectures implement idle_poll over and over.

The switchover to polling mode happens in the first call of the weak
arch_cpu_idle() implementation, but that code fails to reenable
interrupts and therefor triggers the warning.

Fix this by enabling interrupts in the weak arch_cpu_idle() code.

[ tglx: Made the changelog match the patch ]

Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Reviewed-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Link: http://lkml.kernel.org/r/1371236142.2726.43.camel@dabdike
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
kernel/cpu/idle.c

index bf2ee1aafa0ef0e0859a9006cf51a51aa7150452..e695c0a0bcb5c84e79ee93e80de57e4fbab69b33 100644 (file)
@@ -59,6 +59,7 @@ void __weak arch_cpu_idle_dead(void) { }
 void __weak arch_cpu_idle(void)
 {
        cpu_idle_force_poll = 1;
+       local_irq_enable();
 }
 
 /*