Re: [PATCH] ARM: ftrace: Ensure code modifications are synchronisedacross all cpus

From: Jon Medhurst (Tixy)
Date: Mon Dec 10 2012 - 06:03:59 EST


On Fri, 2012-12-07 at 19:02 +0000, Will Deacon wrote:
> For ARMv7, there are small subsets of instructions for ARM and Thumb which
> are guaranteed to be atomic wrt concurrent modification and execution of
> the instruction stream between different processors:
>
> Thumb: The 16-bit encodings of the B, NOP, BKPT, and SVC instructions.
> ARM: The B, BL, NOP, BKPT, SVC, HVC, and SMC instructions.
>

So this means for things like kprobes which can modify arbitrary kernel
code we are going to need to continue to always use some form of
stop_the_whole_system() function?

Also, kprobes currently uses patch_text() which only uses stop_machine
for Thumb2 instructions which straddle a word boundary, so this needs
changing?

--
Tixy

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/