Re: [PATCH] lockdep: annotate i386 apm

From: Ingo Molnar
Date: Thu Oct 12 2006 - 04:10:44 EST



* Andrew Morton <akpm@xxxxxxxx> wrote:

> > So, say interrupts were enabled when entering apm_bios_call*(); you now
> > save that in flags, disable interrupts, and enable them again.
> > Upon reaching local_irq_restore(), we'll hit the else branch with irq's
> > enabled and call trace_hardirqs_on(), which goes EEEK!
>
> I'd assumed lockdep was less stupid than that ;) This? Seems a bit
> overdone..

the problem is not lockdep but that the BIOS enables IRQs behind the
back of the kernel. Lockdep needs to be taught about that - if this
happens unconditionally then i'd suggest to insert an unconditional
trace_hardirqs_on() call to after the local_irq_save() that we do prior
calling the BIOS. (that will be a NOP if lockdep is not enabled)

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/