struct kinfo_lwp *
kvm_getlwps(kvm_t *kd, int pid, u_long procaddr, int *elemsize, int *cnt)
)
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.
)
returns
NULL
on failure.