[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070322093119.GA19394@elte.hu>
Date: Thu, 22 Mar 2007 10:31:19 +0100
From: Ingo Molnar <mingo@...e.hu>
To: Michal Piotrowski <michal.k.k.piotrowski@...il.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Thomas Gleixner <tglx@...utronix.de>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: [patch] setup_boot_APIC_clock() irq-enable fix
* Michal Piotrowski <michal.k.k.piotrowski@...il.com> wrote:
> Hi Ingo,
> 2.6.21-rc4-rt0
> BUG: at kernel/fork.c:1033 copy_process()
thanks Michal - this is a real bug that affects upstream too. Find the
fix below - i've test-booted it and it fixes the warning.
Linus, Andrew, this is a must-have for v2.6.21.
Ingo
--------------->
Subject: [patch] setup_boot_APIC_clock() irq-enable fix
From: Ingo Molnar <mingo@...e.hu>
latest -git triggers an irqtrace/lockdep warning of a leaked
irqs-off condition:
BUG: at kernel/fork.c:1033 copy_process()
after some debugging it turns out that commit ca1b940c accidentally left
interrupts disabled - which trickled down all the way to the first time
we fork a kernel thread and triggered the warning.
the fix is to re-enable interrupts in the 'else' branch of
setup_boot_APIC_clock()'s pmtimers calibration path.
Reported-by: Michal Piotrowski <michal.k.k.piotrowski@...il.com>
Signed-off-by: Ingo Molnar <mingo@...e.hu>
---
arch/i386/kernel/apic.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: linux/arch/i386/kernel/apic.c
===================================================================
--- linux.orig/arch/i386/kernel/apic.c
+++ linux/arch/i386/kernel/apic.c
@@ -507,7 +507,8 @@ void __init setup_boot_APIC_clock(void)
apic_printk(APIC_VERBOSE, "... jiffies result ok\n");
else
local_apic_timer_verify_ok = 0;
- }
+ } else
+ local_irq_enable();
if (!local_apic_timer_verify_ok) {
printk(KERN_WARNING
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists