_LWP_WAKEUP(2) | System Calls Manual | _LWP_WAKEUP(2)

# NAME

_lwp_wakeup — make a blocked light-weight process runnable

# LIBRARY

Standard C Library (libc, -lc)

# SYNOPSIS

#include <lwp.h>
int
_lwp_wakeup(lwpid_t lwp);

# DESCRIPTION

_lwp_wakeup() makes a blocked LWP runnable. The blocked LWP must be in `LSSLEEP` state. Unblocking the LWP does not guarantee that it will make progress; it may block again as soon as it resumes execution in the kernel.

# RETURN VALUES

Upon successful completion, _lwp_wakeup() returns a value of 0. Otherwise, an error code is returned to indicate the error.

# ERRORS

_lwp_wakeup() will fail if:

[`ESRCH`]
  No LWP can be found in the current process corresponding to that specified by lwp.
[`ENODEV`]
  The specified LWP is not in `LSSLEEP` state.
[`EBUSY`]
  The specified LWP is blocked in an uninterruptible sleep.

# HISTORY

The _lwp_wakeup() system call first appeared in NetBSD 2.0.

January 13, 2003 | NetBSD 8.2