NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/58011: delay in panic reboot path can trigger heartbeat(9) messages in a loop



>Number:         58011
>Category:       kern
>Synopsis:       delay in panic reboot path can trigger heartbeat(9) messages in a loop
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 08 23:20:00 +0000 2024
>Originator:     Taylor R Campbell
>Release:        current
>Organization:
The HeartBSD Foundation
>Environment:
>Description:
If cpu0 panics but takes a while to reboot, hardclock ticks may continue to fire on (say) cpu1, leading heartbeat(9) to notice that cpu0 appears not to be making progress.

Since panicstr is already set, cpu1's IPI to cpu0 doesn't trigger another heartbeat panic.  But it does trigger a useless message to the console -- and at hz=100, it does this a hundred times per second, which quickly fills the dmesg history with useless messages.

It seems to me that the hardclock timer should stop running on all CPUs at this point.  However, short of that, there's no need for heartbeat(9) checks to happen at all after panicstr is already set -- they probably won't help diagnose anything.
>How-To-Repeat:
maybe by triggering a panic on a machine where dumps are configured but take >15sec
>Fix:
return early from heartbeat() if panicstr != NULL



Home | Main Index | Thread Index | Old Index