powerpc: Use MSR_64BIT in sstep.c, fix kprobes on BOOK3E
authorMichael Ellerman <michael@ellerman.id.au>
Thu, 7 Apr 2011 21:56:04 +0000 (21:56 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 27 Apr 2011 04:18:46 +0000 (14:18 +1000)
commitb91e136cdf88e19e998dbf4631ead266de4b80b5
tree6f53decf9d389438a740f77f7e907f5abdf5581a
parent9f0b079320ad1cc71ad7ea4e0ed0b64cd72bbd6d
powerpc: Use MSR_64BIT in sstep.c, fix kprobes on BOOK3E

We check MSR_SF a lot in sstep.c, to decide if we need to emulate the
truncation of values when running in 32-bit mode. Factor out that code
into a helper, and convert it and the other uses to use MSR_64BIT.

This fixes a bug on BOOK3E where kprobes would end up returning to a
32-bit address, because regs->nip was truncated, because (msr & MSR_SF)
was false.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/lib/sstep.c