Stefan Roese <[email protected]> wrote on 2011/04/14 17:59:30: > > Hi Joakim, > > On Wednesday 13 April 2011 17:38:03 Joakim Tjernlund wrote: > > > > How big was the size to copy_tofrom_user()? Did it mange to copy > > > > any bytes? > > > > > > The size in __copy_tofrom_user is 4. And its the first call in > > > ftrace_modify_code() that fails directly. This works just fine on a > > > PPC440EPx board. > > > > Since the size is only 4 it would not use dcbX anyway(I think). > > Then is is probably called with the wrong addresses? > > No, addresses seem to be correct. I checked a bit further (I'm quite new to > the MPC8xx MMU) and it seems that trying to modify the code (that's the > destination address) via __copy_tofrom_user() fails on MPC8xx. Still not sure > why this is the case. Perhaps an 8xx guru might chime in here. ;) > > BTW: I just noticed that enabling CONFIG_PIN_TLB seems to resolve this issue. > With this option enabled, the dynamic code modification works just fine. > > Joakim, Scott? Any ideas on this?
hmm, I guess 8xx really maps kernel RO as RO :) Try changing in pte-8xx.h: - #define _PAGE_KERNEL_RO (_PAGE_SHARED) + #define _PAGE_KERNEL_RO (_PAGE_RW |_PAGE_SHARED) _______________________________________________ Linuxppc-dev mailing list [email protected] https://lists.ozlabs.org/listinfo/linuxppc-dev
