DragonFly On-Line Manual Pages
KVM_SWAPINFO(3) DragonFly Library Functions Manual KVM_SWAPINFO(3)
kvm_getswapinfo -- return swap summary statistics for the system
Kernel Data Access Library (libkvm, -lkvm)
kvm_getswapinfo(kvm_t *kd, struct kvm_swap *, int maxswap, int flags);
The kvm_getswapinfo() function fills an array of kvm_swap structures with
swap summary information for each swap device, for up to maxswap - 1
devices. The number of devices, up to maxswap - 1, is returned. A grand
total of all swap devices (including any devices that go beyond maxswap -
1) is returned in one additional array entry. This entry is not counted
in the return value. Thus, if you specify a maxswap value of 1, the
function will typically return the value 0 and the single kvm_swap
structure will be filled with the grand total over all swap devices. The
grand total is calculated from all available swap devices whether or not
you made room for them all in the array. The grand total is returned.
The flags argument is currently unused and must be passed as 0.
If an error occurs, -1 is returned.
Each swap partition and the grand total is summarized in the kvm_swap
structure. This structure contains the following fields:
Values are in PAGE_SIZE'd chunks (see getpagesize(3)). ksw_flags
contains a copy of the swap device flags.
At the current juncture this structure can only represent up to 16TB of
swap per device, and the totalizer field will overflow at 16TB (4TB per
device). The fields need to be converted to long's.
This function caches the nlist values for various kernel variables which
it reuses in successive calls. You may call the function with kd == NULL
to clear the cache.
If the load average was unobtainable, -1 is returned; otherwise, the
number of swap devices actually retrieved is returned.
If the name of the swap device does not fit in the static char buffer in
the structure, it is truncated. The buffer is always zero terminated.
DragonFly 4.7 January 22, 1999 DragonFly 4.7