Benjamin Herrenschmidt 5d38902c48 powerpc: Add irqtrace support for 32-bit powerpc
Based on initial work from: Dale Farnsworth <dale@farnsworth.org>

Add the low level irq tracing hooks for 32-bit powerpc needed
to enable full lockdep functionality.

The approach taken to deal with the code in entry_32.S is that
we don't trace all the transitions of MSR:EE when we just turn
it off to peek at TI_FLAGS without races. Only when we are
calling into C code or returning from exceptions with a state
that have changed from what lockdep thinks.

There's a little bugger though: If we take an exception that
keeps interrupts enabled (such as an alignment exception) while
interrupts are enabled, we will call trace_hardirqs_on() on the
way back spurriously. Not a big deal, but to get rid of it would
require remembering in pt_regs that the exception was one of the
type that kept interrupts enabled which we don't know at this
stage. (Well, we could test all cases for regs->trap but that
sucks too much).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Tested-by: Kumar Gala <galak@kernel.crashing.org>
2009-06-26 14:37:27 +10:00
..
2009-06-26 14:37:22 +10:00
2008-08-18 21:40:03 +02:00
2008-08-04 13:18:17 +10:00
2009-03-24 11:02:59 +02:00
2009-03-24 11:02:58 +02:00
2008-11-19 16:04:58 +11:00
2009-06-12 16:53:38 +10:00
2009-06-17 14:04:42 -07:00
2009-05-21 15:44:21 +10:00
2008-12-21 14:21:14 +11:00
2009-04-07 15:18:58 +10:00
2009-06-16 14:15:46 +10:00
2008-10-15 11:31:54 +11:00
2008-09-06 19:30:15 +01:00
2009-04-01 08:59:16 -07:00
2008-11-19 16:04:55 +11:00
2009-03-30 22:05:12 +10:30