Skip to content

native: segfault on heavy network usage in transceiver #499

@mehlis

Description

@mehlis

sending >100 packets per second causes a segfault in RIOT

in 9 of 10 cases it's:

Core was generated by `../projects/ccn-lite-client/bin/native/ccn-lite-client.elf grid5x5_b4 -t 4711 -'.
Program terminated with signal 11, Segmentation fault.
#0  0x08051cb1 in run () at transceiver.c:269
269                 response = send_packet(cmd->transceivers, cmd->data);
Missing separate debuginfos, use: debuginfo-install glibc-2.17-20.fc19.i686
(gdb) bt
#0  0x08051cb1 in run () at transceiver.c:269
#1  0x4a121ceb in makecontext () from /lib/libc.so.6
#2  0x08095444 in __end_stack ()
#3  0x080c33b4 in transceiver_stack ()
#4  0x080c33b8 in transceiver_stack ()
#5  0x080c33bc in transceiver_stack ()
#6  0x080c33c0 in transceiver_stack ()
#7  0x08095444 in __end_stack ()
#8  0x080bf560 in msg_buffer ()
#9  0x00000000 in ?? ()

in 1 of 10 cases it is:

Core was generated by `../projects/ccn-lite-client/bin/native/ccn-lite-client.elf grid5x5_c4 -t 4724 -'.
Program terminated with signal 11, Segmentation fault.
#0  receive_packet (type=0, pos=0 '\000') at transceiver.c:395
395             trans_p = NULL;
(gdb) bt
#0  receive_packet (type=0, pos=0 '\000') at transceiver.c:395
#1  0x4a121ceb in ?? ()
#2  0x0809645c in relay_stack ()
#3  0x080c43d4 in theRelay ()
#4  0x080c43d8 in theRelay ()
#5  0x0809645c in relay_stack ()
#6  0x080c0578 in transceiver_stack ()
#7  0x00000000 in ?? ()

This looks strange, because receive_packet with type argument=0 indicates it's a packet from CC1100 transceiver. So this might be a corrupted stack

Metadata

Metadata

Labels

Platform: nativePlatform: This PR/issue effects the native platformType: bugThe issue reports a bug / The PR fixes a bug (including spelling errors)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions