summaryrefslogtreecommitdiff
path: root/static/openbsd/man3/kvm_dump.3
diff options
context:
space:
mode:
authorJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:54:44 -0400
committerJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:54:44 -0400
commita9157ce950dfe2fc30795d43b9d79b9d1bffc48b (patch)
tree9df484304b560466d145e662c1c254ff0e9ae0ba /static/openbsd/man3/kvm_dump.3
parent160aa82b2d39c46ad33723d7d909cb4972efbb03 (diff)
docs: Added All OpenBSD Manuals
Diffstat (limited to 'static/openbsd/man3/kvm_dump.3')
-rw-r--r--static/openbsd/man3/kvm_dump.3104
1 files changed, 104 insertions, 0 deletions
diff --git a/static/openbsd/man3/kvm_dump.3 b/static/openbsd/man3/kvm_dump.3
new file mode 100644
index 00000000..b5b23261
--- /dev/null
+++ b/static/openbsd/man3/kvm_dump.3
@@ -0,0 +1,104 @@
+.\" $OpenBSD: kvm_dump.3,v 1.14 2025/06/06 21:53:13 schwarze Exp $
+.\" $NetBSD: kvm_dump.3,v 1.1 1996/03/18 21:11:12 leo Exp $
+.\"
+.\" Copyright (c) 1996 Leo Weppelman
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\"
+.Dd $Mdocdate: June 6 2025 $
+.Dt KVM_DUMP_MKHEADER 3
+.Os
+.Sh NAME
+.Nm kvm_dump_mkheader ,
+.Nm kvm_dump_wrtheader ,
+.Nm kvm_dump_inval
+.Nd crash dump support functions
+.Sh SYNOPSIS
+.Lb libkvm
+.In kvm.h
+.Ft int
+.Fn kvm_dump_mkheader "kvm_t *kd" "off_t dump_off"
+.Ft int
+.Fn kvm_dump_wrtheader "kvm_t *kd" "FILE *fp" "int dumpsize"
+.Ft int
+.Fn kvm_dump_inval "kvm_t *kd"
+.Sh DESCRIPTION
+First note that the functions described here were designed to be used by
+.Xr savecore 8 .
+.Pp
+The function
+.Fn kvm_dump_mkheader
+checks if the physical memory file associated with
+.Fa kd
+contains a valid crash dump header as generated by a dumping kernel.
+When a valid header is found,
+.Fn kvm_dump_mkheader
+initializes the internal kvm data structures as if a crash dump generated by
+the
+.Xr savecore 8
+program was opened.
+This has the intentional side effect of enabling the
+address translation machinery.
+.Pp
+A call to
+.Fn kvm_dump_mkheader
+will most likely be followed by a call to
+.Fn kvm_dump_wrtheader .
+This function takes care of generating the generic header, the
+.Dv CORE_CPU
+section and the section header of the
+.Dv CORE_DATA
+section.
+The data is written to the file pointed at by
+.Fa fp .
+The
+.Fa dumpsize
+argument is only used to properly set the segment size of the
+.Dv CORE_DATA
+section.
+Note that this function assumes that
+.Fa fp
+is positioned at file location 0.
+This function will not seek and therefore allows
+.Fa fp
+to be a file pointer obtained by
+.Fn zopen .
+.Pp
+The
+.Fn kvm_dump_inval
+function clears the magic number in the physical memory file associated with
+.Fa kd .
+The address translations must be enabled for this to work (thus assuming
+that
+.Fn kvm_dump_mkheader
+was called earlier in the sequence).
+.Sh RETURN VALUES
+All functions return 0 on success, \-1 on failure.
+In the case of failure,
+.Xr kvm_geterr 3
+can be used to retrieve the cause of the error.
+.Sh SEE ALSO
+.Xr kvm 3
+.Sh HISTORY
+These functions first appeared in
+.Nx 1.1a .