Panic in add_route while rebooting in Azure ARM64 bug 272666

From: Souradeep Chakrabarti <schakrabarti_at_microsoft.com>
Date: Mon, 14 Aug 2023 06:05:13 UTC
Hi,

We are working on bringing FreeBSD on Azure ARM64. Now with recently released FreeBSD arm64 preview image in
Azure, when doing reboot from serial console, FreeBSD is going into panic while coming up. It is happening almost every 2nd, or 
3rd attempt. The below is the panic.

LF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg
lo0: link state changed to UP
Kernel page fault with the following non-sleepable locks held:
exclusive rm rib head lock (rib head lock) r = 0 (0xffffa000012278e0) locked @ /usr/src/sys/net/route/route_ctl.c:797
stack backtrace:
#0 0xffff0000004d2af4 at witness_debugger+0x5c
#1 0xffff0000004d3cf8 at witness_warn+0x400
#2 0xffff0000007f7310 at data_abort+0xa0
#3 0xffff0000007d3014 at handle_el1h_sync+0x14
  x0: 0x0000000000000001
  x1: 0x0000000000000100
  x2: 0xffffa00001ae7000
  x3: 0xffff00004031af40 ($d.2 + 0x3efee96f)
  x4: 0x0000000000000100
  x5: 0x0000000000000000
  x6: 0x000000000000003f
  x7: 0x0000000000000000
  x8: 0xffff000132c76c40
  x9: 0x0000000000000000
 x10: 0x0000000000000008
 x11: 0x0000000000000000
 x12: 0x000000000000003e
 x13: 0xffffa00001ae70fc
 x14: 0x0000000000000000
 x15: 0x0000000000000001
 x16: 0x0000000000010000
 x17: 0x0000000000000005
 x18: 0xffff00012d2f7e60
 x19: 0xffff00012d2f8080
 x20: 0xffffa00001227800
 x21: 0x0000000000000000
 x22: 0xdeadc0dedeadc0de
 x23: 0xffffa000012278e0
 x24: 0xffffa00001227800
 x25: 0xffffa0000c93ba00
 x26: 0xffff000000960582 (digits + 0x12fbf)
 x27: 0xffffa0000c9338f0
 x28: 0x0000000000000000
 x29: 0xffff00012d2f7e60
  sp: 0xffff00012d2f7e60
  lr: 0xffff0000005bf63c (rib_notify + 0x50)
 elr: 0xffffa0000c93bb00
spsr: 0x0000000060400045
 far: 0xffffa0000c93bb00
 esr: 0x000000008600000e
panic: data abort in critical section or under mutex
cpuid = 3
time = 1690047394
KDB: stack backtrace:
db_trace_self() at db_trace_self
db_trace_self_wrapper() at db_trace_self_wrapper+0x30
vpanic() at vpanic+0x13c
panic() at panic+0x44
data_abort() at data_abort+0x30c
handle_el1h_sync() at handle_el1h_sync+0x14
--- exception, esr 0x8600000e
(null)() at 0xffffa0000c93bb00
add_route() at add_route+0xc4
add_route_flags() at add_route_flags+0x1b0
rib_add_route() at rib_add_route+0x324
ifa_maintain_loopback_route() at ifa_maintain_loopback_route+0xf4
in6_update_ifa() at in6_update_ifa+0x994
in6_ifattach() at in6_ifattach+0x1bc
in6_if_up() at in6_if_up+0x90
if_up() at if_up+0xd8
ifhwioctl() at ifhwioctl+0xb7c
ifioctl() at ifioctl+0x860
kern_ioctl() at kern_ioctl+0x2dc
sys_ioctl() at sys_ioctl+0x118
do_el0_sync() at do_el0_sync+0x520
handle_el0_sync() at handle_el0_sync+0x44
--- exception, esr 0x56000000

It is happening for loopback interface IPv6 address. 
A bug has been opened for the same https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272666
Can someone please help me here, to debug this issue.
This is a blocker for FreeBSD on Azure ARM64.

Thanks
Souradeep