NAME
kvm_getlwps —
access state of LWPs
belonging to a user process
LIBRARY
Kernel Data Access Library (libkvm, -lkvm)
SYNOPSIS
#include <kvm.h>
#include <sys/param.h>
#include <sys/sysctl.h>
struct kinfo_lwp *
kvm_getlwps(
kvm_t
*kd,
int pid,
unsigned long procaddr,
size_t elemsize,
int *cnt);
DESCRIPTION
kvm_getlwps() returns the set of LWPs belonging to the process
specified by
pid or
procaddr in
the kernel indicated by
kd. The number of LWPs found is
returned in the reference parameter
cnt. The LWPs are
returned as a contiguous array of
kinfo_lwp structures. This
memory is locally allocated, and subsequent calls to
kvm_getlwps() and
kvm_close() will
overwrite this storage.
Only the first
elemsize bytes of each array entry are
returned. If the size of the
kinfo_lwp structure increases
in size in a future release of
NetBSD the kernel will
only return the requested amount of data for each array entry and programs
that use
kvm_getlwps() will continue to function without the
need for recompilation.
If called against an active kernel, the
kvm_getlwps() function
will use the
sysctl(3) interface
and return information about the process identified by
pid; otherwise the kernel memory device file or swap
device will be accessed and the process is identified by the location passed
in
paddr.
RETURN VALUES
kvm_getlwps() returns
NULL
on failure.
SEE ALSO
kvm(3),
kvm_close(3),
kvm_geterr(3),
kvm_getproc2(3),
kvm_getprocs(3),
kvm_nlist(3),
kvm_open(3),
kvm_openfiles(3),
kvm_read(3),
kvm_write(3)
BUGS
These routines do not belong in the kvm interface.