1999-01-22 10:36:04 +00:00
|
|
|
.\" Copyright (c) 1999, Matthew Dillon. All rights reserved.
|
|
|
|
.\"
|
|
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
|
|
.\" modification, are permitted provided under the terms of the BSD
|
|
|
|
.\" Copyright as found in /usr/src/COPYRIGHT in the FreeBSD source tree.
|
|
|
|
.\"
|
1999-08-28 00:22:10 +00:00
|
|
|
.\" $FreeBSD$
|
1999-01-22 10:36:04 +00:00
|
|
|
.\"
|
|
|
|
.Dd January 22, 1999
|
|
|
|
.Dt KVM_SWAPINFO 3
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
1999-01-22 11:03:55 +00:00
|
|
|
.Nm kvm_getswapinfo
|
1999-01-22 10:36:04 +00:00
|
|
|
.Nd return swap summary statistics for the system
|
|
|
|
.Sh SYNOPSIS
|
|
|
|
.Fd #include <kvm.h>
|
|
|
|
.Ft int
|
1999-01-22 11:03:55 +00:00
|
|
|
.Fn kvm_getswapinfo "kvm_t *kd" "struct kvm_swap *" "int maxswap" "int flags"
|
1999-01-22 10:36:04 +00:00
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
1999-01-22 11:03:55 +00:00
|
|
|
.Fn kvm_getswapinfo
|
1999-01-22 10:36:04 +00:00
|
|
|
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 grant total is returned.
|
|
|
|
.Pp
|
|
|
|
The flags argument is currently unused and must be passed as 0.
|
|
|
|
.Pp
|
|
|
|
If an error occurs, -1 is returned.
|
|
|
|
.Pp
|
|
|
|
Each swap partition and the grand total is summarized in the kvm_swap
|
|
|
|
structure. This structure contains the following fields:
|
|
|
|
.Bl -inset -width indent
|
|
|
|
.It char ksw_devname[];
|
|
|
|
.It int ksw_total;
|
|
|
|
.It int ksw_used;
|
|
|
|
.It int ksw_flags;
|
|
|
|
.El
|
|
|
|
.Pp
|
|
|
|
Values are in PAGE_SIZE'd chunks ( see getpagesize() ). ksw_flags contains
|
|
|
|
a copy of the swap device flags.
|
2000-02-14 01:35:15 +00:00
|
|
|
.Pp
|
1999-01-22 10:36:04 +00:00
|
|
|
.Sh CACHING
|
|
|
|
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.
|
|
|
|
.Sh DIAGNOSTICS
|
|
|
|
If the load average was unobtainable, \-1 is returned; otherwise,
|
|
|
|
the number of swap devices actually retrieved is returned.
|
|
|
|
.Pp
|
|
|
|
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.
|
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr kvm 3
|