[PATCH] ppc32: fix powersave with interrupts disabled
From: Kumar Gala <hidden>
Date: 2005-01-24 22:02:34
It looks like the problem has to do with entering the powersave routine with irqs disabled. Here is a patch that will only enter powersave if irqs are enabled. Entering powersave on PPC while irqs are disabled causes a hang. Only enter powersave if irqs are disabled. Signed-off-by: Brian Waite <redacted> Signed-off-by: Kumar Gala <redacted> --- diff -Nru a/arch/ppc/kernel/idle.c b/arch/ppc/kernel/idle.c
--- a/arch/ppc/kernel/idle.c 2005-01-24 15:48:24 -06:00
+++ b/arch/ppc/kernel/idle.c 2005-01-24 15:48:24 -06:00@@ -39,7 +39,7 @@ powersave = ppc_md.power_save; if (!need_resched()) { - if (powersave != NULL) + if (powersave != NULL && !irqs_disabled()) powersave(); else { #ifdef CONFIG_SMP