]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc: Fix program check handling when lockdep is enabled
authorMichael Ellerman <michael@ellerman.id.au>
Mon, 20 Feb 2012 21:32:30 +0000 (21:32 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 22 Feb 2012 05:48:49 +0000 (16:48 +1100)
commitbf78441e605e9f6b5102660f3a30cff8dbe2b8bb
tree5cdb92aed142e9d96c0e38352cbc0d6cb2dd581f
parent9c0918925f5b8c24741bf55abb03beb41d4a2f6d
powerpc: Fix program check handling when lockdep is enabled

In commit ee1ee665636 ("Disable interrupts early in Program Check"), we
switched from enabling to disabling interrupts in program_check_common.

Whereas ENABLE_INTS leaves r3 untouched, if lockdep is enabled DISABLE_INTS
calls into lockdep code and will clobber r3. That means we pass a bogus
struct pt_regs* into program_check_exception() and all hell breaks loose.

So load our regs pointer into r3 after we call DISABLE_INTS.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/exceptions-64s.S