On 09/14/2012 05:11 PM, Gilles Chanteperdrix wrote:
On 09/14/2012 04:33 PM, Alessio Margan @ IIT wrote:
Hi all,
I'm switching from xenomai 2.5.6 to 2.6.1 using
adeos-ipipe-2.6.38.8-x86-2.11-01.patch
In this test I have 2 threads :
- rx_udp receive udp packets from dsp boards at 1kHz
- boards_test send udp packets at 1kHz
I got segfault in printer_loop thread, the point is that if I change env
var RT_PRINT_PERIOD to about 10 or 1000 (default is 100 ms) I do not
have segfault.
Any suggestion ?
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7d1ab70 (LWP 5998)]
0xb7d7cb0c in fwrite () from /lib/i686/cmov/libc.so.6
(gdb) bt
#0 0xb7d7cb0c in fwrite () from /lib/i686/cmov/libc.so.6
#1 0xb7fccbf9 in print_buffers () from /usr/xenomai/lib/libxenomai.so.0
#2 0xb7fcd867 in printer_loop () from /usr/xenomai/lib/libxenomai.so.0
#3 0xb7fb5955 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4 0xb7dec5ee in clone () from /lib/i686/cmov/libc.so.6
Since you seem to be able to catch the error with gdb, maybe try and
understand the reason for the segfault? The first, quick check, is to
type "info register", type cat /proc/pid/maps in another terminal, and
check that the stack pointer is in a valid mapping, to check if we do
not have a stack overflow.
If you fail to find the error, please try and reduce the test program to
a simple test case, as simple as needed for the bug to happen and post
it on this mailing list, this would allow us to reproduce the issue.
Thanks ...
try to learn how to read debug info ...
here is what I got
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7d1ab70 (LWP 1789)]
0xb7d7cb0c in fwrite () from /lib/i686/cmov/libc.so.6
(gdb) info register
eax 0xc9cfa3b 211614267
ecx 0xe634c0 15086784
edx 0x19db 6619
ebx 0xb7e62ff4 -1209651212
esp 0xb7d1a23c 0xb7d1a23c
ebp 0xb7d1a258 0xb7d1a258
esi 0xe634c0 15086784
edi 0xe 14
eip 0xb7d7cb0c 0xb7d7cb0c <fwrite+44>
eflags 0x210202 [ IF RF ID ]
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x0 0
gs 0x33 51
(gdb) info threads
4 Thread 0xb7d0db70 (LWP 1791) 0xb7fe2424 in __kernel_vsyscall ()
3 Thread 0xb7d12b70 (LWP 1790) 0xb7fe2424 in __kernel_vsyscall ()
* 2 Thread 0xb7d1ab70 (LWP 1789) 0xb7d7cb0c in fwrite () from
/lib/i686/cmov/libc.so.6
1 Thread 0xb7d1e6e0 (LWP 1786) 0xb7fe2424 in __kernel_vsyscall ()
(gdb)
embedded@ccub-deb:~$ cat /proc/1789/maps
08048000-0808e000 r-xp 00000000 00:10 10629494
/home/embedded/robolli_nfs/v2.0/examples/test_main
0808e000-08090000 rw-p 00045000 00:10 10629494
/home/embedded/robolli_nfs/v2.0/examples/test_main
08090000-0c9ef000 rw-p 00000000 00:00 0 [heap]
b6f4d000-b7d09000 rw-p 00000000 00:00 0
b7d09000-b7d0a000 ---p 00000000 00:00 0
b7d0a000-b7d0e000 rw-p 00000000 00:00 0
b7d0e000-b7d0f000 ---p 00000000 00:00 0
b7d0f000-b7d13000 rw-p 00000000 00:00 0
b7d13000-b7d14000 ---p 00000000 00:00 0
b7d14000-b7d1b000 rw-p 00000000 00:00 0
b7d1b000-b7d1e000 rw-s f800d000 00:05 88 /dev/rtheap
b7d1e000-b7d20000 rw-p 00000000 00:00 0
b7d20000-b7e60000 r-xp 00000000 08:01 114961
/lib/i686/cmov/libc-2.11.3.so
b7e60000-b7e61000 ---p 00140000 08:01 114961
/lib/i686/cmov/libc-2.11.3.so
b7e61000-b7e63000 r--p 00140000 08:01 114961
/lib/i686/cmov/libc-2.11.3.so
b7e63000-b7e64000 rw-p 00142000 08:01 114961
/lib/i686/cmov/libc-2.11.3.so
b7e64000-b7e67000 rw-p 00000000 00:00 0
b7e67000-b7e84000 r-xp 00000000 08:01 89965 /lib/libgcc_s.so.1
b7e84000-b7e85000 rw-p 0001c000 08:01 89965 /lib/libgcc_s.so.1
b7e85000-b7ea9000 r-xp 00000000 08:01 114943
/lib/i686/cmov/libm-2.11.3.so
b7ea9000-b7eaa000 r--p 00023000 08:01 114943
/lib/i686/cmov/libm-2.11.3.so
b7eaa000-b7eab000 rw-p 00024000 08:01 114943
/lib/i686/cmov/libm-2.11.3.so
b7eab000-b7eac000 rw-p 00000000 00:00 0
b7eac000-b7f95000 r-xp 00000000 08:01 82575
/usr/lib/libstdc++.so.6.0.13
b7f95000-b7f99000 r--p 000e9000 08:01 82575
/usr/lib/libstdc++.so.6.0.13
b7f99000-b7f9a000 rw-p 000ed000 08:01 82575
/usr/lib/libstdc++.so.6.0.13
b7f9a000-b7fa1000 rw-p 00000000 00:00 0
b7fa1000-b7fa3000 r-xp 00000000 08:01 114942
/lib/i686/cmov/libdl-2.11.3.so
b7fa3000-b7fa4000 r--p 00001000 08:01 114942
/lib/i686/cmov/libdl-2.11.3.so
b7fa4000-b7fa5000 rw-p 00002000 08:01 114942
/lib/i686/cmov/libdl-2.11.3.so
b7fa5000-b7fa6000 r-xp 00000000 08:01 149583
/usr/xenomai/lib/librtdm.so.1.0.0
b7fa6000-b7fa7000 rw-p 00000000 08:01 149583
/usr/xenomai/lib/librtdm.so.1.0.0
b7fa7000-b7fae000 r-xp 00000000 08:01 114960
/lib/i686/cmov/librt-2.11.3.so
b7fae000-b7faf000 r--p 00006000 08:01 114960
/lib/i686/cmov/librt-2.11.3.so
b7faf000-b7fb0000 rw-p 00007000 08:01 114960
/lib/i686/cmov/librt-2.11.3.so
b7fb0000-b7fc5000 r-xp 00000000 08:01 114951
/lib/i686/cmov/libpthread-2.11.3.so
b7fc5000-b7fc6000 r--p 00014000 08:01 114951
/lib/i686/cmov/libpthread-2.11.3.so
b7fc6000-b7fc7000 rw-p 00015000 08:01 114951
/lib/i686/cmov/libpthread-2.11.3.so
b7fc7000-b7fca000 rw-p 00000000 00:00 0
b7fca000-b7fcf000 r-xp 00000000 08:01 149564
/usr/xenomai/lib/libxenomai.so.0.0.0
b7fcf000-b7fd0000 rw-p 00005000 08:01 149564
/usr/xenomai/lib/libxenomai.so.0.0.0
b7fd0000-b7fda000 r-xp 00000000 08:01 149576
/usr/xenomai/lib/libpthread_rt.so.1.0.0
b7fda000-b7fdb000 rw-p 00009000 08:01 149576
/usr/xenomai/lib/libpthread_rt.so.1.0.0
b7fdb000-b7fdc000 rw-p 00000000 00:00 0
b7fdc000-b7fdf000 rw-s f8885000 00:05 88 /dev/rtheap
b7fdf000-b7fe0000 r-xs f8012000 00:05 88 /dev/rtheap
b7fe0000-b7fe2000 rw-p 00000000 00:00 0
b7fe2000-b7fe3000 r-xp 00000000 00:00 0 [vdso]
b7fe3000-b7ffe000 r-xp 00000000 08:01 89948 /lib/ld-2.11.3.so
b7ffe000-b7fff000 r--p 0001b000 08:01 89948 /lib/ld-2.11.3.so
b7fff000-b8000000 rw-p 0001c000 08:01 89948 /lib/ld-2.11.3.so
bffdf000-c0000000 rw-p 00000000 00:00 0 [stack]
TIA
Alessio
--
ISTITUTO ITALIANO
DI TECNOLOGIA
Alessio Margan
/Senior Technician/
/Advanced Robotics/
Via Morego, 30 16163 Genova
<http://maps.google.com/maps?f=q&hl=en&geocode=&q=via+morego,+30+genova&sll=37.0625,-95.677068&sspn=85.420533,191.601563&ie=UTF8&ll=44.474913,8.907037&spn=0.004685,0.011652&t=h&z=17&iwloc=addr>
alessio.margan[at]iit <mailto:[email protected]>
www.iit.it <http://www.iit.it>
*Legal Disclaimer*
This electronic message contains information that is confidential. The
information is intended for the use of the addressee only. If you are
not the addressee we would appreciate your notification in this respect.
Please note that any disclosure, copy, distribution or use of the
contents of this message is prohibited and may be unlawful. We have
taken every reasonable precaution to ensure that any kind of attachment
to this e-mail has been swept for viruses. However, we cannot accept
liability for any damage sustained as a result of software viruses and
would advise you to carry out your own virus checks before opening any
attachment.
*Avvertenza legale*
Questo messaggio Email contiene informazioni confidenziali riservate ai
soli destinatari. Qualora veniate in possesso di tali informazioni
senza essere definito come destinatario vi reghiamo di leggere le
seguenti note. Ogni apertura, copia, distribuzione del contenuto del
messaggio e dei suoi allegati è proibito e potrebbe violare le presenti
leggi. Abbiamo attivato ogni possibile e ragionevole precauzione per
assicurare che gli allegati non contengano virus. Comunque non
assumeremo alcuna responsabilità per ogni eventuale danno causato da
virus software e simili in quanto è onere del destinatario verificarne
l’assenza in ogni allegato attuando propri indipendenti controlli.
_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai