Commit 4edc5db8 authored by Ingo Molnar's avatar Ingo Molnar Committed by Linus Torvalds

[PATCH] setup_boot_APIC_clock() irq-enable fix

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: default avatarMichal Piotrowski <michal.k.k.piotrowski@gmail.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Acked-by: default avatarThomas Gleixner <tglx@brown.paperbag.linutronix.de>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 9c35dd7f
...@@ -506,7 +506,8 @@ void __init setup_boot_APIC_clock(void) ...@@ -506,7 +506,8 @@ void __init setup_boot_APIC_clock(void)
apic_printk(APIC_VERBOSE, "... jiffies result ok\n"); apic_printk(APIC_VERBOSE, "... jiffies result ok\n");
else else
local_apic_timer_verify_ok = 0; local_apic_timer_verify_ok = 0;
} } else
local_irq_enable();
if (!local_apic_timer_verify_ok) { if (!local_apic_timer_verify_ok) {
printk(KERN_WARNING printk(KERN_WARNING
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment