man.bsd.lv manual page server

Manual Page Search Parameters

KVM_READ(3) Library Functions Manual KVM_READ(3)

kvm_read, kvm_read2, kvm_writeread or write kernel virtual memory

library “libkvm”

#include <kvm.h>

ssize_t
kvm_read(kvm_t *kd, unsigned long addr, void *buf, size_t nbytes);

ssize_t
kvm_read2(kvm_t *kd, kvaddr_t addr, void *buf, size_t nbytes);

ssize_t
kvm_write(kvm_t *kd, unsigned long addr, const void *buf, size_t nbytes);

The (), kvm_read2(), and () functions are used to read and write kernel virtual memory (or a crash dump file). See (3) for information regarding opening kernel virtual memory and crash dumps.

The () and kvm_read2() functions transfer nbytes bytes of data from the kernel space address addr to buf. Conversely, () transfers data from buf to addr. Unlike their SunOS counterparts, these functions cannot be used to read or write process address spaces.

The () function uses a different type (kvaddr_t) for the addr argument to allow use of addresses larger than ULONG_MAX when examining non-native kernel images.

Upon success, the number of bytes actually transferred is returned. Otherwise, -1 is returned.

kvm(3), kvm_close(3), kvm_getargv(3), kvm_getenvv(3), kvm_geterr(3), kvm_getprocs(3), kvm_nlist(3), kvm_open(3), kvm_openfiles(3)

November 27, 2015 FreeBSD-12.0