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)

tribblix@gmail.com :: GitHub :: Privacy