ARM: kprobes: Reject probing of SETEND instructions
authorJon Medhurst <tixy@yxit.co.uk>
Mon, 18 Apr 2011 07:53:56 +0000 (08:53 +0100)
committerNicolas Pitre <nicolas.pitre@linaro.org>
Fri, 29 Apr 2011 03:40:59 +0000 (23:40 -0400)
The emulation of SETEND was broken as it changed the endianess for
the running kprobes handling code. Rather than adding a new simulation
routine to fix this we'll just reject probing of SETEND as these should
be very rare in the kernel.

Note, the function emulate_none is now unused but it is left in the
source code as future patches will use it.

Signed-off-by: Jon Medhurst <tixy@yxit.co.uk>
Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
arch/arm/kernel/kprobes-decode.c

index fb818976f4cb277be38e715f72193406a61d03c4..b81fbfb331512e0ae43520b4719fbb1b6f2882f7 100644 (file)
@@ -956,11 +956,6 @@ space_1111(kprobe_opcode_t insn, struct arch_specific_insn *asi)
        }
 
        /* SETEND : 1111 0001 0000 0001 xxxx xxxx 0000 xxxx */
-       if ((insn & 0xffff00f0) == 0xf1010000) {
-               asi->insn[0] = insn;
-               asi->insn_handler = emulate_none;
-               return INSN_GOOD;
-       }
 
        /* Coprocessor instructions... */
        /* MCRR2 : 1111 1100 0100 xxxx xxxx xxxx xxxx xxxx : (Rd != Rn) */