Stefan Haller <stefan.haller@stha.de> writes:
On Thu, Apr 28, 2022 at 03:20:24PM +0200, Toke Høiland-Jørgensen wrote:
Excellent! Thanks again for testing - let me know if you run into any other issues :)
While running your `babel-rtt-01` branch (commit bb858a8673c5a3c) I received a SIGSEGV after ~2 weeks uptime (FreeBSD arm64). Here is the backtrace:
# lldb --core bird.core bird (lldb) target create "bird" --core "bird.core" Core file '/root/bird/bird.core' (aarch64) was loaded. (lldb) bt all * thread #1, name = 'bird', stop reason = signal SIGSEGV * frame #0: 0x00000000002b2860 bird`babel_add_seqno_request [inlined] rem_node(n=0x0000000040322030) at lists.c:149:11 frame #1: 0x00000000002b2860 bird`babel_add_seqno_request(p=0x0000000040c282a0, e=0x000000004031b1a0, router_id=4919093121465068033, seqno=39, hop_count='\0', nbr=0x0000000040c9b020) at babel.c:414:7 frame #2: 0x00000000002b2470 bird`babel_handle_update(m=0x0000000040324d50, ifa=<unavailable>) at babel.c:1454:5 frame #3: 0x00000000002b6b84 bird`babel_rx_hook [inlined] babel_process_packet(ifa=0x0000000040c207a0, pkt=<unavailable>, len=<unavailable>, saddr=<unavailable>, sport=<unavailable>, daddr=<unavailable>, dport=6696) at packets.c:1644:7 frame #4: 0x00000000002b696c bird`babel_rx_hook(sk=<unavailable>, len=<unavailable>) at packets.c:1703:3 frame #5: 0x00000000002e97f0 bird`sk_read(s=0x0000000040c208c0, revents=<unavailable>) at io.c:1914:7 frame #6: 0x00000000002eab7c bird`io_loop at io.c:2349:5 frame #7: 0x00000000002edf80 bird`main(argc=<unavailable>, argv=<unavailable>) at main.c:940:3 frame #8: 0x000000000026ceb4 bird`__start(argc=4, argv=0x0000ffffffffe9f8, env=0x0000ffffffffea20, cleanup=<unavailable>) at crt1_c.c:70:7 frame #9: 0x0000000040326018 ld-elf.so.1`___lldb_unnamed_symbol27 + 24
From a first glance it seems unlikely that the RTT changes are the root cause. Don't if it helps, but I could make binary and core dump available.
Not directly, but you may be hitting a condition that's rare without it; I think I see the problem, will send a patch. Thank you for the report! -Toke