NAME
kcrash - examine system images
SYNOPSIS
kcrash [-w] [-k] dumpfile [namelist]
DESCRIPTION
The kcrash program is similar to the crash(1M) program in
that it examines system crash dumps. Command line arguments
to kcrash are dumpfile and namelist.
dumpfile is the file containing the system memory image. The
default dumpfile is /dev/mem.
The text file namelist contains the symbol table information
needed for symbolic access to the system memory image to be
examined. The default namelist is
/etc/conf/lddrv.d/symfile.
Unlike crash, the kcrash command interface is based on the
kernel debugger [see kdb(1M)]. All commands accepted by the
kernel debugger can be used identically in kcrash, with the
following exceptions:
I/O commands (such as in, out, and so forth) do not
work.
Execution commands (such as go, tr, and so forth) do not
work.
Multiprocessor commands (such as gos, ss, cpu, and so
forth) do not work.
Instruction and memory breakpoint commands do not work.
Commands that modify memory (actually modify the crash
dump file) work only if the -w flag is present in the
command line.
If the -k flag is present, dumpfile can be /dev/mem,
allowing kcrash to be used on the running system. In
addition, the following commands work only in kcrash (not in
the kernel debugger):
< file
<< file Read and execute commands from the given file.
Note that these commands are like dbcmd(1M)
used with the kernel debugger.
! shell-command
!! shell-command
Execute the given shell command.
q
qq
quit Quit kcrash.
The tables below describe the kcrash alternatives to crash
available in UNIX System V Release 4.0. To use kcrash
effectively, you must understand the results of a given
command in crash.. You can then select an alternative to
use with kcrash. The table below lists the effects of
kcrash commands used as alternatives to crash commands.
Effects of crash and kcrash Commands
Command Effect in crash Effect in kcrash
_______________________________________________________________________
!cmd works ! [cmd] or !! [cmd]
_______________________________________________________________________
? works ? [cmd] or ?? [cmd]
_______________________________________________________________________
as works load proc.k and
dscr.k, address from
as field in proc can
be given to dscr
macro
_______________________________________________________________________
async fails "aio_list not found
in symbol table"
_______________________________________________________________________
b (buffer) fails "s not found in load buf.k
symbol table"
_______________________________________________________________________
base works pr
_______________________________________________________________________
buf (bufhdr) fails "header, no content" load buf.k
_______________________________________________________________________
c (callout) fails "header, no content" load stat.k, cm
callout
_______________________________________________________________________
class works load info.k, cm
class
_______________________________________________________________________
dbfree not supported dl *mdbfreelist
_______________________________________________________________________
dblock not supported not applicable
_______________________________________________________________________
defproc works load proc.k, cm
setproc
_______________________________________________________________________
dis works di [address]
_______________________________________________________________________
dispq fails "header, no content" dl dispq, use
structure in
/usr/include/sys/disp.h
to examine
dispatcher queue
_______________________________________________________________________
ds works ds address
_______________________________________________________________________
evactive fails "ev_actqp not found none
in symbol table"
_______________________________________________________________________
evmm fails "ev_mminfo not found none
in symbol table"
_______________________________________________________________________
f (file) works dl file or *file
_______________________________________________________________________
findaddr works requires manual
calculation of table
size and offset
_______________________________________________________________________
findslot fails "no match for none
rt_proc in sizetable"
_______________________________________________________________________
fs (vfssw) works load stat.k, cm
vfssw
_______________________________________________________________________
gdp fails "gdp table not none
found"
_______________________________________________________________________
gdt works load dscr.k, cm gdt
_______________________________________________________________________
help works ? [cmd] or ?? [cmd]
_______________________________________________________________________
hrt fails "header, no content" dl hrtimes, use
structure in
/usr/include/sys/hrtsys.h
_______________________________________________________________________
i (inode) fails "header, no content" load inode.k, cm
inode address
_______________________________________________________________________
idt works load dscr.k, cm idt
_______________________________________________________________________
kfp works dr save_panic_regs,
use value in bp
_______________________________________________________________________
kmastat works use the information
in Km_freepool,
Km_allocbpool,
Km_pools
_______________________________________________________________________
l (lck) works
_______________________________________________________________________
ldt works use dR command
_______________________________________________________________________
linkblk works dl linkTable and use
the structure
defined in
/usr/include/sys/stream.h
_______________________________________________________________________
map works none
_______________________________________________________________________
mbfree not supported not applicable
_______________________________________________________________________
mblock not supported not applicable
_______________________________________________________________________
mode works pg
_______________________________________________________________________
mount (m, vfs) works load stat.k, cm vfsw
_______________________________________________________________________
nm works nm "regular
expression"
_______________________________________________________________________
od works dl address
_______________________________________________________________________
p (proc) works load proc.k cm ps
_______________________________________________________________________
page works load page.k cm page
address
_______________________________________________________________________
panic works dl *panicstr
_______________________________________________________________________
pcb works load tss.k, cm tss
address
_______________________________________________________________________
plock works none
_______________________________________________________________________
prnode fails "header, no content" crash uses this to
look at /proc, not
needed in kcrash
_______________________________________________________________________
ptbl fails "core dump" load page.k
_______________________________________________________________________
pty works
_______________________________________________________________________
q (quit) works q or qq or quit
_______________________________________________________________________
qrun works load stream.k, cm
queuerun
_______________________________________________________________________
queue works load stream.k, cm
queues
_______________________________________________________________________
rcvd fails "receive descriptor
table not found"
_______________________________________________________________________
rd (od) works dl
_______________________________________________________________________
rduser fails "rcvd user table not not applicable
found"
_______________________________________________________________________
redirect works use of cf
_______________________________________________________________________
resource RFS none
_______________________________________________________________________
rtdptbl works
_______________________________________________________________________
rtproc fails "header, no content"
_______________________________________________________________________
runq fails "runq not yet
implemented"
_______________________________________________________________________
s (stack) works bt
_______________________________________________________________________
search works se
_______________________________________________________________________
size works none
_______________________________________________________________________
sndd fails "send descriptor not applicable
table not found"
_______________________________________________________________________
snode works load inode.k, cm
snode
_______________________________________________________________________
srmount RFS not applicable
_______________________________________________________________________
stat works load stat.k, cm stat
_______________________________________________________________________
stream works load stream.k, cm
streams
_______________________________________________________________________
strstat works load stream.k, cm
strstat
_______________________________________________________________________
t (trace) works load trace.k, cm
trace address
_______________________________________________________________________
test works not applicable
_______________________________________________________________________
ts works ds address
_______________________________________________________________________
tsdptbl works
_______________________________________________________________________
tsproc works
_______________________________________________________________________
tty fails "tty struct for asy dl various tty
not found `in symbol structures
table"
_______________________________________________________________________
u (user) works load user.k, cm user
[address]
_______________________________________________________________________
ui (uinode) works load uinode.k, cm
uinode address
_______________________________________________________________________
v (var) works load stat.k, cm var
_______________________________________________________________________
vnode works load vnode.k, cm
vnode address
_______________________________________________________________________
vtop works none
_______________________________________________________________________
ASCII Mode
__________________________________________________________
| | |
| Terminfo| Name |
|_________|_______________________________________________|
| | |
| cit600 | C.ITOHTM CIT-600 in VT100TM mode |
| ddy880a | Anritsu DDY-880a in ANSI mode |
| k1411 | JCC K-1411 III in VT100 mode |
| s2250 | Olivetti S-2250 in VT100 mode |
| ts2 | RICOH TS-2 Terminal in VT100 mode |
| v4w | VictorO Multiwindowing Terminal in ANSI7 mode|
| v4w-w | Victor Multiwindowing |
|_________|_______________________________________________|
Japanese Mode
_________________________________________________________________
| | |
| Terminfo | Name |
|____________|___________________________________________________|
| | |
| cit600-j | C.ITOH CIT-600 in VT100 mode |
| ddy880a-j | Anritsu DDY-880a in ANSI mode |
| k1411-j | JCC K-1411 III in VT100 mode |
| lp4080 | RICOH LP4080 laser printer |
| lp4080-j | RICOH LP4080 laser printer |
| s2250-j-jis| Olivetti S-2250 in VT100 JIS mode |
| ts2-j | RICOH TS-2 Terminal in VT100 mode |
| ts5-j-euc | RICOH TS-5 pc in EUC mode |
| up130k | EPSON UP-130K kanji printer |
| up130k-j | EPSON UP-130K kanji printer |
| v4w-j | Victor Multiwindowing Terminal in ANSI7 mode |
| v4w-w-j | Victor Multiwindowing Terminal in ANSI7 mode Wide|
| vg720-j | Victor Graphics in ANSI mode |
|____________|___________________________________________________|
FILES
/crash/crash.* crash dumps
/crash/macros/* macros that are useful for kernel
debugging
/etc/conf/lddrv.d/symfile
default namelist
SEE ALSO
crash(1M), kdb(1M), dbcmd(1M), and dbsym(1M)