Hillo,
Can you repeat his with the hello example:
int main(void) { for (;;) { puts("Hello World!"); *(volatile int *)0x0=0xaffedead; sleep(1); } } objdump -d pkg/hello/server/src/OBJ-arm_armv7a-l4f/hello
010001e0 <main>: 10001e0: e92d4830 push {r4, r5, fp, lr} 10001e4: e30d4ead movw r4, #57005 ; 0xdead 10001e8: e28db00c add fp, sp, #12 10001ec: e34a4ffe movt r4, #45054 ; 0xaffe 10001f0: e3a05000 mov r5, #0 10001f4: e59f0010 ldr r0, [pc, #16] ; 100020c <main+0x2c> 10001f8: eb0024a2 bl 1009488 <puts> 10001fc: e5854000 str r4, [r5] 1000200: e3a00001 mov r0, #1 1000204: eb001f4b bl 1007f38 <sleep> 1000208: eafffff9 b 10001f4 <main+0x14> 100020c: 01012b50 .word 0x01012b50
===
and pc=0x10001fc matches exactly the page fault.
alright, this works for me, too.
I get unhandled write page fault @0 pc=1000228. And objdump of hello shows the same instruction as yours, at PC.
Btw. i did execute on ARM directly, same as my actual project.
Now i revisited my project a found something. When i add the faulty code in myClient, i find the PC with objdump. But, when i put the faulty code in libClient, i.e. a shared lib which myClient uses, then i dont find the PC in myClient or libClient (but in moe).
So, the Error must happen somewhere in libClient. But the question is why the PC is so strange, and how may it lead me to the fault?
Thanks, ba_f