KVM_DUMP(3) | Library Functions Manual | KVM_DUMP(3) |
kvm_dump_mkheader
,
kvm_dump_wrtheader
,
kvm_dump_inval
—
#include <kvm.h>
int
kvm_dump_mkheader
(kvm_t
*kd, off_t
dump_off);
int
kvm_dump_wrtheader
(kvm_t
*kd, FILE *fp,
int dumpsize);
int
kvm_dump_inval
(kvm_t
*kd);
The function kvm_dump_mkheader
() checks if
the physical memory file associated with kd contains a
valid crash dump header as generated by a dumping kernel. When a valid
header is found, kvm_dump_mkheader
() initializes the
internal kvm data structures as if a crash dump generated by the
savecore(8) program was
opened. This has the intentional side effect of enabling the address
translation machinery.
A call to kvm_dump_mkheader
() will most
likely be followed by a call to
kvm_dump_wrtheader
(). This function takes care of
generating the generic header, the CORE_CPU section and the section header
of the CORE_DATA section. The data is written to the file pointed at by
fp. The dumpsize argument is
only used to properly the set the segment size of the CORE_DATA section.
Note that this function assumes that fp is positioned
at file location 0. This function will not seek and therefore allows
fp to be a file pointer obtained by
zopen
().
The kvm_dump_inval
() function clears the
magic number in the physical memory file associated with
kd. The address translations must be enabled for this
to work (thus assuming that kvm_dump_mkheader
() was
called earlier in the sequence).
kvm_dump_mkheader
() return 0 on
success, -1 on failure. The function
kvm_dump_mkheader
() returns the size of the headers
present before the actual dumpdata starts. If no valid headers were found but
no fatal errors occurred, 0 is returned. On fatal errors the return value is
-1.
In the case of failure, kvm_geterr(3) can be used to retrieve the cause of the error.
March 17, 1996 | NetBSD 9.2 |