Hello, this looks like something to be released in 3.2.1, and we are currently finalizing that release. Sorry for the quiet approach, we were swamped by other work. Gonna return to you in several days when the release gets an actual shape. Have a nice weekend! Maria On March 27, 2026 1:26:02 PM GMT+01:00, "Buchberger, Carsten (WiTCOM)" <C.Buchberger@witcom.de> wrote:
Hi,
after upgrading from Bird 3.1.4 to 3.2.0 (EPEL RPM package) bird is crashing shortly after starting it with the following error
Assertion 'DG_IS_LOCKED(orig->domain)' failed at lib/resource.c:208
The issue was reported back in january on this list (https://bird.network.cz/pipermail/bird-users/2026-January/018551.html) but there was no real follow-up.
We confirm the behaviour - bird crashes shortly after processing the first BGP requests and generates he following core-dump
Stack trace of thread 6573: #0 0x00007f191f08d02c __pthread_kill_implementation (libc.so.6 + 0x8d02c) #1 0x00007f191f03fb86 raise (libc.so.6 + 0x3fb86) #2 0x00007f191f029873 abort (libc.so.6 + 0x29873) #3 0x0000559400a21d5f bug (bird + 0xe9d5f) #4 0x0000559400978bd7 rmove (bird + 0x40bd7) #5 0x00005594009d3809 bgp_start.lto_priv.0 (bird + 0x9b809) #6 0x000055940098b48e proto_rethink_goal.lto_priv.0 (bird + 0x5348e) #7 0x000055940097611e defer_execute (bird + 0x3e11e) #8 0x0000559400972323 ev_run_list_limited (bird + 0x3a323) #9 0x0000559400950556 main (bird + 0x18556) #10 0x00007f191f02a610 __libc_start_call_main (libc.so.6 + 0x2a610) #11 0x00007f191f02a6c0 __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x2a6c0) #12 0x0000559400950c75 _start (bird + 0x18c75)
Stack trace of thread 6574: #0 0x00007f191f088540 __GI___lll_lock_wait (libc.so.6 + 0x88540) #1 0x00007f191f08e6d2 __pthread_mutex_lock@GLIBC_2.2.5<mailto:__pthread_mutex_lock@GLIBC_2.2.5> (libc.so.6 + 0x8e6d2) #2 0x0000559400a22a92 do_lock (bird + 0xeaa92) #3 0x0000559400a1c0e0 bird_thread_main (bird + 0xe40e0) #4 0x00007f191f08b2ea start_thread (libc.so.6 + 0x8b2ea) #5 0x00007f191f1103d0 __clone3 (libc.so.6 + 0x1103d0)
Stack trace of thread 6575: #0 0x00007f191f1030cf __poll (libc.so.6 + 0x1030cf) #1 0x0000559400a1c436 bird_thread_main (bird + 0xe4436) #2 0x00007f191f08b2ea start_thread (libc.so.6 + 0x8b2ea) #3 0x00007f191f1103d0 __clone3 (libc.so.6 + 0x1103d0) ELF object binary architecture: AMD x86-64
We reverted to Bird 3.1.5 - no issues here.
The issue occurs with the following configuration (slightly anonymized)
Bird.conf
# Configure logging log syslog all; # Include constants include "/etc/bird/constants.conf"; router id rs_ipv4;
protocol bfd BFD_DCFABRIC { multihop { interval 300 ms; multiplier 3; }; }
protocol direct { disabled; # Disable by default ipv4; # Connect to default IPv4 table ipv6; # ... and to default IPv6 table }
protocol kernel { ipv4 { }; }
protocol kernel { ipv6 { }; }
protocol static { disabled; ipv4; # Again, IPv4 channel with default options }
include "/etc/bird/rs-peerings.conf";
constants.conf
define rs_ipv4 = x.y.y.z;
rs-peerings.conf
# FILTER
filter only_serviceips { if net ~ [ 192.168.20.0/24{32,32} ] then accept; if net ~ [ 10.127.64.0/19{32,32} ] then accept; reject; }
# HOSTS
template bgp SERVICENODE { local as 4200010004; ipv4 { import filter only_serviceips; export none; }; rs client; hold time 6; multihop 10; bfd on; source address rs_ipv4; }
protocol bgp rack_XYZ from SERVICENODE { neighbor range 192.168.y.y/26 as 4200010003; dynamic name "rack_XYZ_"; }
template bgp DCFABRIC { ipv4 { import none; export all; add paths tx; }; local as 4200010004; rs client; multihop 10; bfd on; source address rs_ipv4; }
# DC-Fabric nodes
protocol bgp R_DCI_01 from DCFABRIC { neighbor x.x.x.x as 4200001201; }
-- Maria Matejka (she/her) | BIRD Team Leader | CZ.NIC, z.s.p.o.