Watchdog pixhawk6c

Hey Everyone,

Recently I had a watchdog error message “restored watchdog attidude 1 -2 53”; where my pixhawk6c was constantly rebooting. When I reviewed the crash_dump.bin I find this below:

(gdb) bt
#0 0xe000fffe in ?? ()

# 1 0x081466ea in ChibiOS::Scheduler::_monitor_thread (arg=0x24018644 ) at ../../libraries/AP_HAL_ChibiOS/Scheduler.cpp:478

#2 0x08020f2e in __port_thread_start ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

does the address come from this function that originates from here:

#if AP_CRASHDUMP_ENABLED
if (loop_delay >= 1800 && using_watchdog) {
// we are about to watchdog, better to trigger a hardfault
// now and get a crash dump file
void ptr = (void)0xE000FFFF;
typedef void (*fptr)();
fptr gptr = (fptr) (void *)ptr;
gptr();
}
#endif

Because the addresses match (with respect to program counter). If thats the case why was there a loop_delay greater than 1.8ms in the first place?

Thank you,
Amir