_LWP_UNPARK_ALL(2)        NetBSD System Calls Manual        _LWP_UNPARK_ALL(2)

NAME
     _lwp_unpark_all -- resume execution of a waiting LWP

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <lwp.h>

     ssize_t
     _lwp_unpark_all(lwpid_t *targets, size_t ntargets, const void *hint);

DESCRIPTION
     _lwp_unpark_all() resumes execution of one or more light-weight processes
     listed in the array pointed to by targets.

     The target LWPs are assumed to be waiting in the kernel as a result of
     calls to _lwp_park().  If any of the target LWPs are not currently wait-
     ing, those LWPs will return immediatley upon the next call to
     _lwp_park().

     The value pointed to by ntargets specifies the size of the array pointed
     to by targets.  If the targets argument is given as NULL, the maximum
     size of the array (expressed as the number of entries) is returned.

     See _lwp_park(2) for a description of the hint argument.

RETURN VALUES
     If the maximum size of the targets array is not being queried, a return
     of 0 indicates that the call succeeded.  A -1 return value indicates an
     error occurred and errno is set to indicate the reason.

ERRORS
     [EFAULT]  The value specified for targets is invalid.

     [EINVAL]  The value specified for ntargets is out of range.

     [ENOMEM]  Insufficient resources are available to complete the operation.

SEE ALSO
     _lwp_park(2), _lwp_unpark(2), _lwp_wakeup(2)

HISTORY
     The _lwp_unpark_all() system call first appeared in NetBSD 5.0.

NetBSD 5.0_STABLE              February 10, 2007             NetBSD 5.0_STABLE
