DUMP(9E) Driver Entry Points DUMP(9E)
NAME
dump - dump memory to device during system failure
SYNOPSIS
#include <sys/types.h>
#include <sys/ddi.h>
#include <sys/sunddi.h>
int dump(
dev_t dev,
caddr_t addr,
daddr_t blkno,
int nblk);
INTERFACE LEVEL
illumos specific (illumos DDI). This entry point is
required. For drivers
that do not implement
dump() routines,
nodev(9F) should be used.
ARGUMENTS
dev Device number.
addr Address for the beginning of the area to be dumped.
blkno Block offset to dump memory.
nblk Number of blocks to dump.
DESCRIPTION
dump() is used to dump a portion of virtual address space directly to a
device in the case of system failure. It can also be used for checking
the state of the kernel during a checkpoint operation. The memory area to
be dumped is specified by
addr (base address) and
nblk (length). It is
dumped to the device specified by
dev starting at offset
blkno. Upon
completion
dump() returns the status of the transfer.
When the system is panicking, the calls of functions scheduled by
timeout(9F) and
ddi_trigger_softintr(9F) will never occur. Neither can
delay(9F) be relied upon, since it is implemented via
timeout(). See
ddi_in_panic(9F).
dump() is called at interrupt priority.
RETURN VALUES
dump() returns
0 on success, or the appropriate error number.
SEE ALSO
cpr(4),
nodev(9F) Writing Device Drivers October 9, 2001
DUMP(9E)