You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
kernel/core/core_watchdog.{c,h} - two watchdog worlds, one header.
Policy watchdogs (monitored slots)
A task registers a slot with a timeout:
slot = watchdog_register("mydaemon", 5000, policy);
watchdog_start(slot);
... watchdog_feed(slot); /* at least every 5 s */
Timeout fires -> the TASK is killed, the reason lands in the kernel
log (test log ERROR in the E2E), the KERNEL lives on. This is the
right tool for "my background worker may hang".
Hardware watchdogs
Intel TCO (LPC): PMBASE discovered from the chipset, TCOBASE
derived, the timer armed; expiry hard-resets the machine. Live on
QEMU q35 - the E2E S12 prints the discovery line, arms, starves,
and asserts the REAL second boot.
ACPI WDAT: the table's entries program the hardware; same
verify-by-reboot cycle (E2E S13).
watchdog shows both worlds: hardware support + slot table + policy
tests.
The E2E scenarios that gate this
S7 (status/slots), S8 (policy kill + log), S12 (TCO real reset +
second boot), S13 (WDAT real reset + second boot). Fourteen total in
tools/wp12_watchdog_logging_e2e.py - all fourteen must PASS at
release.