HomeFreeBSD

dwwdt: make it actually useful

Description

dwwdt: make it actually useful

Flip dwwdt_prevent_restart to false. What's the use of a watchdog if it
does not restart a hung system?

Add a knob for panic-ing on the first timeout, resetting on the second
one. This can be useful if interrupts can still work, otherwise a reset
recovers a system without any aid for debugging the hang.

The change also doubles the timeout that's programmed into the hardware.
The previous version of the code always had the interrupt on the first
timeout enabled, but it took no action on it. Only the second timeout
could be configured to reset the system. So, the hardware timeout was
set to a half of the user requested timeout. But now,we can take a
corrective action on the first timeout, so we use the user requested
timeout.

While here, define boolean sysctl-s as such.

Reviewed by: manu
MFC after: 3 weeks
Differential Revision: https://reviews.freebsd.org/D33534

Details

Provenance
avgAuthored on Jan 11 2022, 1:56 PM
Reviewer
manu
Differential Revision
D33534: dwwdt: make it actually useful
Parents
rG7fdf0e883567: dtrace: add a knob to control maximum size of principal buffers
Branches
Unknown
Tags
Unknown