RFT: Babel RTT extension in Bird

Toke Høiland-Jørgensen toke at toke.dk
Thu May 12 14:43:06 CEST 2022


Toke Høiland-Jørgensen <toke at toke.dk> writes:

> Stefan Haller <stefan.haller at 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!

Alright, sent a patch; also force-pushed the babel-rtt-01 branch to
incorporate it, so you can pull and reset if you want to incorporate it
in your system :)

-Toke



More information about the Bird-users mailing list