xref: /netbsd-src/lib/libc/sys/_lwp_wakeup.2 (revision eff611cf1c245a222015cbae22abfba700cd2905)
1.\"	$NetBSD: _lwp_wakeup.2,v 1.7 2022/12/04 16:21:54 uwe Exp $
2.\"
3.\" Copyright (c) 2003 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Jason R. Thorpe of Wasabi Systems, Inc.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd December 4, 2022
31.Dt _LWP_WAKEUP 2
32.Os
33.Sh NAME
34.Nm _lwp_wakeup
35.Nd make a blocked light-weight process runnable
36.Sh LIBRARY
37.Lb libc
38.Sh SYNOPSIS
39.In lwp.h
40.Ft int
41.Fn _lwp_wakeup "lwpid_t lwp"
42.Sh DESCRIPTION
43.Fn _lwp_wakeup
44makes a blocked LWP runnable.  The blocked LWP must be in
45.Dv LSSLEEP
46state.
47Unblocking the LWP does not guarantee that it will make progress; it
48may block again as soon as it resumes execution in the kernel.
49.Sh RETURN VALUES
50.Rt -std _lwp_wakeup
51.Sh ERRORS
52.Fn _lwp_wakeup
53will fail if:
54.Bl -tag -width Er
55.It Bq Er ESRCH
56No LWP can be found in the current process corresponding to that
57specified by
58.Fa lwp .
59.It Bq Er ENODEV
60The specified LWP is not in
61.Dv LSSLEEP
62state.
63.It Bq Er EBUSY
64The specified LWP is blocked in an uninterruptible sleep.
65.El
66.Sh HISTORY
67The
68.Fn _lwp_wakeup
69system call first appeared in
70.Nx 2.0 .
71