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