powerpc: Emulate instructions in little endian mode
authorAnton Blanchard <anton@samba.org>
Tue, 6 Aug 2013 16:01:47 +0000 (02:01 +1000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 14 Aug 2013 05:33:35 +0000 (15:33 +1000)
Alistair noticed we got a SIGILL on userspace mfpvr instructions.

Remove the little endian check in the emulation code, it is
probably there to protect against the old pseudo little endian
implementations but doesn't make sense for real little endian.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/traps.c

index e6fac21..bdf2dd1 100644 (file)
@@ -967,7 +967,7 @@ static int emulate_instruction(struct pt_regs *regs)
        u32 instword;
        u32 rd;
 
-       if (!user_mode(regs) || (regs->msr & MSR_LE))
+       if (!user_mode(regs))
                return -EINVAL;
        CHECK_FULL_REGS(regs);