On 9/27/2024 9:55 AM, Stephane Rochoy wrote:

mike tancsa <m...@sentex.net> writes:

I also started to play around with the non hardware based watchdog
timer.  For some reason, I cant get the box to reboot. It just prints a
stack trace and continues

This is with no driver loaded.

0{t}# watchdogd --softtimeout-action panic -t 5
0{t}# ps -auxww | grep dog
root     1487   0.4  0.2   12820  12920  -  S<s  09:03 0:00.01 watchdogd
--softtimeout-action panic -t 5
root     1489   0.0  0.0   12808   2636 u0  S+   09:03 0:00.00
grep dog
0{t}# kill -9 1487
0{t}# KDB: stack backtrace:
#0 0xffffffff80b7fefd at kdb_backtrace+0x5d
#1 0xffffffff80abec93 at hardclock+0x103
#2 0xffffffff80abfe8b at handleevents+0xab
#3 0xffffffff80ac0b7c at timercb+0x24c
#4 0xffffffff810d0ebb at lapic_handle_timer+0xab
#5 0xffffffff80fd8a71 at Xtimerint+0xb1
#6 0xffffffff804b3685 at acpi_cpu_idle+0x2c5
#7 0xffffffff80fc48f6 at cpu_idle_acpi+0x46
#8 0xffffffff80fc49ad at cpu_idle+0x9d
#9 0xffffffff80b67bb6 at sched_idletd+0x576
#10 0xffffffff80aecf7f at fork_exit+0x7f
#11 0xffffffff80fd7dae at fork_trampoline+0xe

0{t}#

Should it not reboot at this point ?

I don't think so. `kdb_backtrace` being involved let me think the
kernel was compiled with KDB. You should play with ddb(8) to set a
default action like reset when entering kdb.

Hmmm, Its a GENERIC kernel,

# Debugging support.  Always need this:
options         KDB                     # Enable kernel debugger support.
options         KDB_TRACE               # Print a stack trace for a panic.

Do you know off hand how to set the system to just reboot ? The ddb man page seems to imply I need options DDB as well, which is not in GENERIC in order to set script actions.

# sysctl -a debug.kdb
debug.kdb.enter_securelevel: 0
debug.kdb.alt_break_to_debugger: 0
debug.kdb.break_to_debugger: 0
debug.kdb.stack_overflow: 0
debug.kdb.trap_code: 0
debug.kdb.trap: 0
debug.kdb.panic_str:
debug.kdb.panic: 0
debug.kdb.enter: 0
debug.kdb.current:
debug.kdb.available:

    ---Mike



Reply via email to