On Fri, 29 Nov 2013 10:29:56 +0100 Philippe Gerum <r...@xenomai.org> wrote: > On 11/29/2013 09:41 AM, Bukuli Norbert wrote: > > (gdb) cont > > Continuing. > > warning: Could not load shared library symbols for > > linux-vdso32.so.1. Do you need "set solib-search-path" or "set > > sysroot"? warning: .dynamic section for > > "/opt/eldk-5.4/powerpc/sysroots/powerpc-linux/usr/xenomai/lib/libpthread_rt.so.1" > > is not at the expected address (wrong library or version mismatch?) > > warning: .dynamic section for > > "/opt/eldk-5.4/powerpc/sysroots/powerpc-linux/usr/xenomai/lib/libxenomai.so.0" > > is not at the expected address (wrong library or version mismatch?) > > These warnings may trigger with recent broken gdbserver releases, > let's ignore them. > https://sourceware.org/ml/gdb-patches/2013-06/msg00054.html OK
> > > [New Thread 280] > > > > Program received signal SIGILL, Illegal instruction. > > [Switching to Thread 280] > > 0x0fdf4e74 in ?? () > > from /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/lib/libc.so.6 > > > > (gdb) disass $pc-64 $pc+20 (gdb) disass $pc-64,$pc+20 Dump of assembler code from 0xfdf4e34 to 0xfdf4e88: 0x0fdf4e34: .long 0x3894 0x0fdf4e38: .long 0x12b8a4 0x0fdf4e3c: .long 0x80 0x0fdf4e40: vaddfp v16,v0,v0 0x0fdf4e44: .long 0x19fb 0x0fdf4e48: .long 0xe99c8 0x0fdf4e4c: .long 0xa0 0x0fdf4e50: vaddfp v16,v0,v0 0x0fdf4e54: .long 0x2742 0x0fdf4e58: .long 0xe375c 0x0fdf4e5c: .long 0x4c 0x0fdf4e60: subfic r16,r0,10 0x0fdf4e64: .long 0x378a 0x0fdf4e68: .long 0xf834c 0x0fdf4e6c: .long 0x58 0x0fdf4e70: vaddfp v16,v0,v0 => 0x0fdf4e74: .long 0x5a3e 0x0fdf4e78: .long 0xe286c 0x0fdf4e7c: .long 0x68 0x0fdf4e80: vaddfp v16,v0,v0 0x0fdf4e84: .long 0x80e End of assembler dump > > would help at this point. > > > (gdb) bt > > #0 0x0fdf4e74 in ?? () > > from /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/lib/libc.so.6 #1 > > 0x0ffd8af8 in sched_setconfig_np () > > from > > /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/usr/xenomai/lib/libpthread_rt.so.1 > > #2 0x0ff7ba68 in start_thread (arg=0xbffffdd0) at > > pthread_create.c:313 > > Is sched_setconfig_np() really the start routine given to > pthread_create() in your application, I guess not. Or could this > weird backtrace reveal a stack overflow? This is the clocktest, not my trivial posix skin test. The start routine in that is "cpu_thread()" in clocktest.c:196 in xenomai-2.6.3. Debugging of the trivial posix skin test (my application): (gdb) set sysroot /opt/eldk-5.4/powerpc/sysroots/powerpc-linux (gdb) cont The program is not being run. (gdb) target remote 172.31.2.11:2001 Remote debugging using 172.31.2.11:2001 Reading symbols from /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/lib/ld.so.1...Reading symbols from /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/lib/.debug/ld-2.17.so...done. done. Loaded symbols for /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/lib/ld.so.1 _start () at ../sysdeps/powerpc/powerpc32/dl-start.S:32 32 ../sysdeps/powerpc/powerpc32/dl-start.S: No such file or directory. (gdb) cont Continuing. warning: Could not load shared library symbols for linux-vdso32.so.1. Do you need "set solib-search-path" or "set sysroot"? warning: .dynamic section for "/opt/eldk-5.4/powerpc/sysroots/powerpc-linux/usr/xenomai/lib/libpthread_rt.so.1" is not at the expected address (wrong library or version mismatch?) warning: .dynamic section for "/opt/eldk-5.4/powerpc/sysroots/powerpc-linux/usr/xenomai/lib/libxenomai.so.0" is not at the expected address (wrong library or version mismatch?) [New Thread 336] Program received signal SIGTRAP, Trace/breakpoint trap. [Switching to Thread 336] 0x480319f8 in ?? () (gdb) bt #0 0x480319f8 in ?? () #1 0x0ffd8af8 in sched_setconfig_np () from /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/usr/xenomai/lib/libpthread_rt.so.1 #2 0x0ff7ba68 in start_thread (arg=0xbffffdd0) at pthread_create.c:313 #3 0x4802ff18 in _rtld_global_ro () from /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/lib/ld.so.1 Backtrace stopped: frame did not save the PC (gdb) disass $pc-64,$pc+20 Dump of assembler code from 0x480319b8 to 0x48031a0c: 0x480319b8: .long 0x0 0x480319bc: .long 0x0 0x480319c0: .long 0x0 0x480319c4: .long 0x0 0x480319c8: .long 0x0 0x480319cc: .long 0x0 0x480319d0: cmpi cr6,1,r21,29554 0x480319d4: cmpi cr6,1,r24,25966 0x480319d8: xoris r13,r27,24937 0x480319dc: cmpi cr6,1,r12,26978 0x480319e0: cmpi cr6,1,r12,26978 0x480319e4: andi. r20,r3,26738 0x480319e8: oris r1,r11,25695 0x480319ec: andi. r20,r19,11891 0x480319f0: xoris r14,r25,12544 0x480319f4: .long 0x0 => 0x480319f8: twi 31,r29,16384 0x480319fc: b 0x480633cc 0x48031a00: twi 31,r30,-3476 0x48031a04: b 0x480636cc 0x48031a08: b 0x48062e90 End of assembler dump. (gdb) frame 1 #1 0x0ffd8af8 in sched_setconfig_np () from /opt/eldk-5.4/powerpc/sysroots/powerpc-linux/usr/xenomai/lib/libpthread_rt.so.1 (gdb) disass $pc-64,$pc+20 Dump of assembler code from 0xffd8ab8 to 0xffd8b0c: 0x0ffd8ab8 <pthread_set_name_np+52>: bl 0xffef720 <sigemptyset@plt> 0x0ffd8abc <pthread_set_name_np+56>: addi r3,r31,20 0x0ffd8ac0 <pthread_set_name_np+60>: bl 0xffef540 <__real_sem_post@plt> 0x0ffd8ac4 <pthread_set_name_np+64>: lwz r9,8(r1) 0x0ffd8ac8 <pthread_set_name_np+68>: cmpw cr7,r9,r25 0x0ffd8acc <pthread_set_name_np+72>: beq- cr7,0xffd8b38 <sched_setconfig_np+84> 0x0ffd8ad0 <pthread_set_name_np+76>: cmpwi cr7,r28,0 0x0ffd8ad4 <pthread_set_name_np+80>: beq- cr7,0xffd8aec <sched_setconfig_np+8> 0x0ffd8ad8 <pthread_set_name_np+84>: lis r0,512 0x0ffd8adc <pthread_set_name_np+88>: li r3,1 0x0ffd8ae0: ori r0,r0,555 0x0ffd8ae4 <sched_setconfig_np+0>: sc 0x0ffd8ae8 <sched_setconfig_np+4>: mfcr r0 0x0ffd8aec <sched_setconfig_np+8>: mtctr r27 0x0ffd8af0 <sched_setconfig_np+12>: mr r3,r26 0x0ffd8af4 <sched_setconfig_np+16>: bctrl => 0x0ffd8af8 <sched_setconfig_np+20>: li r4,0 0x0ffd8afc <sched_setconfig_np+24>: mr r31,r3 0x0ffd8b00 <sched_setconfig_np+28>: lis r3,4 0x0ffd8b04 <sched_setconfig_np+32>: bl 0xffef5e0 <open@plt> 0x0ffd8b08 <sched_setconfig_np+36>: lwz r0,68(r1) End of assembler dump. Please, note, that the file, in frame 1 in not equal to the actually used one, I do not use Xenomai provided by ELDK, I compiled it separately. > > >> gdb will give you the faulty location in symbolic form. > > If you can suggest, please, how I can override loaded libraries in > > gdb, then I will repeat the tests. > > You could set solib-search-path appropriately or load them manually > using file (-readnow), but I don't think this would help in > understanding this particular issue. It somewhat behaves as if broken > Xenomai syscall code was output by the compiler - this is something > we faced a couple of times already on arm and ppc in the past years. > Checking the disassembled code surrounding the fault location may > help figuring this out. I see. Can I check somehow whether this happened? > > >> > >>> I have read in a previous messages on this list, that the > >>> CONFIG_XENO_HW_UNLOCKED_SWITCH option should be turned off, but > >>> unfortunately this did not help. > >>> > >> > >> Unlocked switching is no more an issue with 3.8.13 and beyond. > > Then I will turn it on again. > > You can also leave it off. On architectures with sane caches (e.g. > not armv5 and its aliasing issues), it basically depends on whether > shorter (real-time) interrupt latencies [on] are preferred over > shorter task scheduling latencies [off]. The difference will likely > only amount for a couple of micro-seconds max on most platforms > though, however both options are available with 3.8+ pipelines. > I see. I left it off in the tests mentioned above. -- Norbert Bukuli software engineer embedded development Mediso Ltd. Tel.: +36 1 3993 030 Fax.: +36 1 3993 040 Mailing address: Hungary, H-1047 Budapest, Baross utca 91-95. Billing address: Hungary, H-1022 Budapest, Alsotorokvesz 14. norbert.buk...@mediso.com www.mediso.com -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 490 bytes Desc: not available URL: <http://www.xenomai.org/pipermail/xenomai/attachments/20131129/a062f4cc/attachment.sig> _______________________________________________ Xenomai mailing list Xenomai@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai