From 9dbe00a56a60748668d2040cf4e59427060e2252 Mon Sep 17 00:00:00 2001 From: Paul Mundt Date: Fri, 16 Oct 2009 17:55:59 +0900 Subject: sh: Fix up IRQ re-enabling for the need_resched() case. In the case where need_resched() is set in between the cpu_idle() and pm_idle() calls we were missing an else case for just re-enabling local IRQs and bailing out. This was noticed by the irqs_disabled() warning, even though IRQs were being re-enabled elsewhere. Signed-off-by: Paul Mundt --- arch/sh/kernel/idle.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'arch/sh/kernel/idle.c') diff --git a/arch/sh/kernel/idle.c b/arch/sh/kernel/idle.c index 3243eb23e842..aaff0037fcd7 100644 --- a/arch/sh/kernel/idle.c +++ b/arch/sh/kernel/idle.c @@ -65,7 +65,8 @@ void default_idle(void) if (!need_resched()) { local_irq_enable(); cpu_sleep(); - } + } else + local_irq_enable(); set_thread_flag(TIF_POLLING_NRFLAG); } else -- cgit v1.2.1