Skip to content

Another OTBR with OTBR_MDNS=openthread crash #12088

@3oris

Description

@3oris

OTBR compiled with OTBR_MDNS=openthread occasionally crashes.

The logs will show:

Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.889 [C] Platform------: ------------------ BEGINNING OF CRASH -------------
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.890 [C] Platform------: *** FATAL ERROR: Caught signal: 6 (Aborted)
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 0: /usr/sbin/otbr-agent(+0x6ad4b4) [0x5579bcd4b4]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 1: /usr/sbin/otbr-agent(+0x6ad5f4) [0x5579bcd5f4]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 2: linux-vdso.so.1 __kernel_rt_sigreturn+0x0 [0xbd58c820]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 3: /lib/aarch64-linux-gnu/libc.so.6(+0x83c18) [0x7fbd033c18]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 4: /lib/aarch64-linux-gnu/libc.so.6 gsignal+0x1c [0xbcfea8ac]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 5: /lib/aarch64-linux-gnu/libc.so.6 abort+0xf4 [0xbcfd7480]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 6: /lib/aarch64-linux-gnu/libc.so.6(+0x342d8) [0x7fbcfe42d8]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 7: /lib/aarch64-linux-gnu/libc.so.6(+0x3433c) [0x7fbcfe433c]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.927 [C] Platform------: # 8: /usr/sbin/otbr-agent ot::Dns::Multicast::Core::TxMessage::Send()+0x158 [0x79b136c4]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: # 9: /usr/sbin/otbr-agent ot::Dns::Multicast::Core::TxMessage::CheckSizeLimitToPrepareAgain(bool&)+0x5c [0x79b13558]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #10: /usr/sbin/otbr-agent ot::Dns::Multicast::Core::ServiceEntry::PrepareResponse(ot::Dns::Multicast::Core::EntryContext&)+0x44 [0x79b10ca8]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #11: /usr/sbin/otbr-agent void ot::Dns::Multicast::Core::Entry::HandleTimer<ot::Dns::Multicast::Core::ServiceEntry>(ot::Dns::Multicast::Core::EntryContext&)+0x128 [0x79b2124c]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #12: /usr/sbin/otbr-agent ot::Dns::Multicast::Core::ServiceEntry::HandleTimer(ot::Dns::Multicast::Core::EntryContext&)+0x1c [0x79b10a2c]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #13: /usr/sbin/otbr-agent ot::Dns::Multicast::Core::HandleEntryTimer()+0x218 [0x79b0b6f4]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #14: /usr/sbin/otbr-agent ot::TimerMilliIn<ot::Dns::Multicast::Core, &ot::Dns::Multicast::Core::HandleEntryTimer>::HandleTimer(ot::Timer&)+0x18 [0x79b24ee0]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #15: /usr/sbin/otbr-agent ot::Timer::Fired()+0x1c [0x79abed9c]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #16: /usr/sbin/otbr-agent ot::Timer::Scheduler::ProcessTimers(ot::Timer::Scheduler::AlarmApi const&)+0x74 [0x79abec10]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #17: /usr/sbin/otbr-agent ot::TimerMilli::Scheduler::ProcessTimers()+0x20 [0x79abee5c]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #18: /usr/sbin/otbr-agent otPlatAlarmMilliFired+0x30 [0x79abecb8]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #19: /usr/sbin/otbr-agent platformAlarmProcess+0x90 [0x79bb4654]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #20: /usr/sbin/otbr-agent otSysMainloopProcess+0x48 [0x79bc9bb0]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #21: /usr/sbin/otbr-agent otbr::Host::RcpHost::Process(otbr::MainloopContext const&)+0x2c [0x79bee748]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #22: /usr/sbin/otbr-agent otbr::MainloopManager::Process(otbr::MainloopContext const&)+0x68 [0x79c04258]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #23: /usr/sbin/otbr-agent otbr::Application::Run()+0x1d0 [0x799717f4]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #24: /usr/sbin/otbr-agent(+0x4b41e8) [0x55799d41e8]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #25: /usr/sbin/otbr-agent otbr::RealMain(int, char**)+0x88 [0x799d4430]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #26: /usr/sbin/otbr-agent main+0x1c [0x799d37f8]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #27: /lib/aarch64-linux-gnu/libc.so.6(+0x27744) [0x7fbcfd7744]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #28: /lib/aarch64-linux-gnu/libc.so.6 __libc_start_main+0x98 [0xbcfd7818]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: #29: /usr/sbin/otbr-agent _start+0x30 [0x79971070]
Okt 31 07:50:50 rpi-otbr-1 otbr-agent[3626]: 1d.19:02:31.928 [C] Platform------: ------------------ END OF CRASH ------------------

OTBR_OPTIONS:

 -DOT_CHANNEL_MANAGER=ON \
 -DOT_CHANNEL_MONITOR=ON \
 -DOT_LINK_METRICS_MANAGER=ON \
 -DOTBR_MDNS=openthread \
 -DOTBR_BORDER_ROUTING=ON \
 -DOTBR_BACKBONE_ROUTER=ON \
 -DOTBR_DUA_ROUTING=ON \
 -DOTBR_NAT64=ON \
 -DOTBR_TREL=ON \
 -DOTBR_SRP_ADVERTISING_PROXY=OFF \
 -DOTBR_DNSSD_DISCOVERY_PROXY=OFF

It should not crash.

IEEE 802.15.4 hardware platform: EFR32MG21
Git hash for OTBR is ca4ba9ae63e963f62277a2d847c9e3a5dee5ab20

Network topology:

  • ca 125 thread devices (bulbs, sensors)
  • OTBR built see above
  • 5 NestHub TBRs (fuchsia F28 release)
  • Home Assistant Matter Controller
  • flat topology (no VLANs, no ISP assigned IPv6 network)
d12:61ed:4221:cf91::/64 dev eth0 proto kernel metric 256 expires 1777sec pref medium
fd1f:d3e7:24c4:1::/64 dev wpan0 proto kernel metric 256 pref medium
fd1f:d3e7:24c4:1::/64 via fe80::5bc2:a8ca:b525:ff02 dev eth0 proto ra metric 1024 expires 1776sec pref medium
fd1f:d3e7:24c4:1::/64 via fe80::1095:13e3:86cd:1f dev eth0 proto ra metric 1024 expires 1776sec pref medium
fd1f:d3e7:24c4:1::/64 via fe80::5c3:3975:10fb:b9be dev eth0 proto ra metric 1024 expires 1775sec pref medium
fd1f:d3e7:24c4:1::/64 via fe80::a745:3993:c3ca:d27 dev eth0 proto ra metric 1024 expires 1674sec pref medium
fd1f:d3e7:24c4:1::/64 via fe80::a756:a4fd:1248:2f88 dev eth0 proto ra metric 1024 expires 1777sec pref medium
fd1f:d3e7:24c4:2::/96 dev wpan0 metric 65535 pref medium
fd98:cca9:249e::/64 dev wpan0 proto kernel metric 256 pref medium
fc00::/7 dev wpan0 metric 65535 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev wpan0 proto kernel metric 256 pref medium

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions