https://bugzilla.novell.com/show_bug.cgi?id=685584
https://bugzilla.novell.com/show_bug.cgi?id=685584#c2 --- Comment #2 from Martin Baulig <[email protected]> 2011-04-06 18:52:38 UTC --- Disassembling this test() method: === 000005a8 <test>: 5a8: e92d4800 push {fp, lr} 5ac: e28db004 add fp, sp, #4 5b0: e24dd018 sub sp, sp, #24 5b4: e50b0018 str r0, [fp, #-24] 5b8: e3a03000 mov r3, #0 ..... 620: e51b3008 ldr r3, [fp, #-8] 624: e5932000 ldr r2, [r3] 628: e51b3010 ldr r3, [fp, #-16] 62c: e0823003 add r3, r2, r3 630: e50b3010 str r3, [fp, #-16] 634: e3a00004 mov r0, #4 ... ==== And logcat output: ==== I/ActivityManager(14782): Start proc Martin.LastHope.NativeTest for service Martin.LastHope.NativeTest/.NativeTestService: pid=6968 uid=10113 gids={3003} I/AndroidRuntime( 6961): NOTE: attach of thread 'Binder Thread #3' failed D/NativeTest( 6968): STATIC INIT! D/dalvikvm( 6968): Trying to load lib /data/data/Martin.LastHope.NativeTest/lib/libnativetest.so 0x476ec9a0 D/dalvikvm( 6968): Added shared lib /data/data/Martin.LastHope.NativeTest/lib/libnativetest.so 0x476ec9a0 I/Martin ( 6968): native_test_init(): page = 0x44083000, func = 0x80b005a8 D/NativeTest( 6968): onCreate! D/NativeTest( 6968): onStartCommand I/Martin ( 6968): native_test_main(): 0x49240b64 I/Martin ( 6968): test(): 0x49240b4c I/Martin ( 6968): test(): loop 0 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 1 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 0 done I/Martin ( 6968): test(): loop 1 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 2 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 1 done I/Martin ( 6968): test(): loop 2 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 3 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 2 done I/Martin ( 6968): test(): loop 3 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 4 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 3 done I/Martin ( 6968): test(): loop 4 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 5 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 4 done I/Martin ( 6968): test(): loop 5 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 6 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 5 done I/Martin ( 6968): test(): loop 6 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 7 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 6 done I/Martin ( 6968): test(): loop 7 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 8 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 7 done I/Martin ( 6968): test(): loop 8 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 9 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 8 done I/Martin ( 6968): test(): loop 9 I/Martin ( 6968): sigsegv(): 0x44083000 - 0x44083000 - 10 I/Martin ( 6968): PC = 0x80b00624, SP = 0x49240b40 I/Martin ( 6968): R0 = 0x00000017, R1 = 0x492406e8, R2 = 0x89b427c6, R3 = 0x44083000 I/Martin ( 6968): R4 = 0x49240ba0, R5 = 0x00000004, R6 = 0x44086f94, R7 = 0x44086fa0 I/Martin ( 6968): R8 = 0x49240b80, R9 = 0x44086f98, R10 = 0x44086f80 I/Martin ( 6968): FP = 0x49240b5c, IP = 0xafa030c8, LR = 0x80b00620 I/Martin ( 6968): CPSR = 0x60000010 I/Martin ( 6968): test(): loop 9 done I/Martin ( 6968): test(): loop 10 I/ActivityManager(14782): Process Martin.LastHope.NativeTest (pid 6968) has died. W/ActivityManager(14782): Scheduling restart of crashed service Martin.LastHope.NativeTest/.NativeTestService in 5000ms ===== As you can see, we get out of that segfault handler 9 times and resume the loop, the 10th time kills the process. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
