ARM: kprobes: Reject probing of STREX and LDREX instructions
authorJon Medhurst <tixy@yxit.co.uk>
Fri, 8 Apr 2011 14:32:53 +0000 (15:32 +0100)
committerNicolas Pitre <nicolas.pitre@linaro.org>
Fri, 29 Apr 2011 03:40:56 +0000 (23:40 -0400)
commitec58d7f2373cec47f30b773d40a89f18bf6fc489
tree3c196788348435ea7ac6c1dfda58d9789d5c6e83
parentba48d40713ae5afe758dd5525a0f8740cce71d22
ARM: kprobes: Reject probing of STREX and LDREX instructions

The emulation code for STREX and LDREX instructions is faulty, however,
rather than attempting to fix this we reject probes of these
instructions. We do this because they can never succeed in gaining
exclusive access as the exception framework clears the exclusivity
monitor when a probes breakpoint is hit. (This is a general problem
when probing all instructions executing between a LDREX and its
corresponding STREX and can lead to infinite retry loops.)

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