kernel: separate state for trace-deferred syscalls
[minix.git] / lib / libc / sys / _lwp_suspend.2
blob0f28e5c162f84605884681a5f18e24f069e95085
1 .\"     $NetBSD: _lwp_suspend.2,v 1.4 2008/04/30 13:10:51 martin 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 January 13, 2003
31 .Dt _LWP_SUSPEND 2
32 .Os
33 .Sh NAME
34 .Nm _lwp_suspend ,
35 .Nm _lwp_continue
36 .Nd suspend or continue a light-weight process
37 .Sh LIBRARY
38 .Lb libc
39 .Sh SYNOPSIS
40 .In lwp.h
41 .Ft int
42 .Fn _lwp_suspend "lwpid_t lwp"
43 .Ft int
44 .Fn _lwp_continue "lwpid_t lwp"
45 .Sh DESCRIPTION
46 .Fn _lwp_suspend
47 suspends execution of the LWP specified by
48 .Fa lwp .
49 Once an LWP is suspended, subsequent calls to
50 .Fn _lwp_suspend
51 have no effect.
52 The only way to resume execution of a suspended LWP is via
53 .Fn _lwp_continue .
54 .Pp
55 .Fn _lwp_continue
56 resumes execution of the LWP specified by
57 .Fa lwp .
58 Once an LWP is resumed, subsequent calls to
59 .Fn _lwp_continue
60 have no effect.
61 .Sh RETURN VALUES
62 Upon successful completion,
63 .Fn _lwp_suspend
64 and
65 .Fn _lwp_continue
66 return a value of 0.
67 Otherwise, an error code is returned to indicate the error.
68 .Sh ERRORS
69 .Fn _lwp_suspend
70 and
71 .Fn _lwp_continue
72 will fail if:
73 .Bl -tag -width [EDEADLK]
74 .It Bq Er ESRCH
75 No LWP can be found in the current process corresponding to that
76 specified by
77 .Fa lwp .
78 .El
79 .Pp
80 .Fn _lwp_suspend
81 will fail if:
82 .Bl -tag -width [EDEADLK]
83 .It Bq Er EDEADLK
84 The LWP specified by
85 .Fa lwp
86 is the only LWP in the process.
87 .El
88 .Sh SEE ALSO
89 .Xr _lwp_create 2
90 .Sh HISTORY
91 The
92 .Fn _lwp_create
93 system call first appeared in
94 .Nx 2.0 .