KVM_GETLWPS(3)

NAME
kvm_getlwps - access state of LWPs belonging to a user process

LIBRARY
libkvm

SYNOPSIS
#include <kvm.h>
#include <sys/param.h>
#include <sys/sysctl.h>
struct kinfo_lwp *
kvm_getlwps(kvm_t *kd, int pid, u_long procaddr, int *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.