# Initial commands for kdb, alter to suit your needs.
# These commands are executed in kdb_init() context, no SMP, no
# processes.  Commands that require process data (including stack or
# registers) are not reliable this early.  set and bp commands should
# be safe.  Global breakpoint commands affect each cpu as it is booted.

# Standard debugging information for first level support, just type archkdb
# or archkdbcpu or archkdbshort at the kdb prompt.

defcmd dumpcommon "" "Common kdb debugging"
  set BTAPROMPT 0
  set LINES 10000
  -summary
  -cpu
  -ps
  -dmesg 600
  -bt
endefcmd

defcmd dumpall "" "First line debugging"
  set BTSYMARG 1
  set BTARGS 9
  pid R
  -dumpcommon
  -bta
endefcmd

defcmd dumpcpu "" "Same as dumpall but only tasks on cpus"
  set BTSYMARG 1
  set BTARGS 9
  pid R
  -dumpcommon
  -btc
endefcmd

