Runtime code modification fails on arm

Russell King - ARM Linux linux at arm.linux.org.uk
Tue Nov 10 14:17:40 EST 2009


On Wed, Nov 11, 2009 at 02:08:27AM +1300, Papalagi Pakeha wrote:
> Why is this happening? What is so different between x86 and ARM in
> that field? I'm aware that my problem exhibits in userspace, not in
> the kernel. I'm sorry if it's way off topic here.

ARM CPUs tend to have a Harvard architecture:
  http://en.wikipedia.org/wiki/Harvard_architecture

See the paragraph just above "Uses" for the problem you are hitting
and the solution.  As others in this thread have pointed out, the
kernel provides a call to deal with the I/D cache coherency problem
which must be called _after_ _any_ modification of instructions
whether they have been executed previously or not.



More information about the linux-arm-kernel mailing list