mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-07 00:50:50 +00:00
change ipmi watchdog to awlays stop when system is halted
That is, wd_shutdown_countdown value is ignored when halting. A halted system should remain halted for as long as needed until a power cycle, so the watchdog should not reset the system.
This commit is contained in:
parent
90dc788982
commit
8fdb261601
|
@ -766,6 +766,10 @@ ipmi_shutdown_event(void *arg, int howto)
|
||||||
* Zero value in wd_shutdown_countdown will disable watchdog;
|
* Zero value in wd_shutdown_countdown will disable watchdog;
|
||||||
* Negative value in wd_shutdown_countdown will keep existing state;
|
* Negative value in wd_shutdown_countdown will keep existing state;
|
||||||
*
|
*
|
||||||
|
* System halt is a special case of shutdown where wd_shutdown_countdown
|
||||||
|
* is ignored and watchdog is disabled to ensure that the system remains
|
||||||
|
* halted as requested.
|
||||||
|
*
|
||||||
* Revert to using a power cycle to ensure that the watchdog will
|
* Revert to using a power cycle to ensure that the watchdog will
|
||||||
* do something useful here. Having the watchdog send an NMI
|
* do something useful here. Having the watchdog send an NMI
|
||||||
* instead is useless during shutdown, and might be ignored if an
|
* instead is useless during shutdown, and might be ignored if an
|
||||||
|
@ -773,7 +777,7 @@ ipmi_shutdown_event(void *arg, int howto)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
wd_in_shutdown = true;
|
wd_in_shutdown = true;
|
||||||
if (wd_shutdown_countdown == 0) {
|
if (wd_shutdown_countdown == 0 || (howto & RB_HALT) != 0) {
|
||||||
/* disable watchdog */
|
/* disable watchdog */
|
||||||
ipmi_set_watchdog(sc, 0);
|
ipmi_set_watchdog(sc, 0);
|
||||||
sc->ipmi_watchdog_active = 0;
|
sc->ipmi_watchdog_active = 0;
|
||||||
|
|
Loading…
Reference in a new issue