8158 Want named threads API
[unleashed.git] / usr / src / man / man3proc / Pcreate_agent.3proc
blobd492b38d51419502bac8dd1b50814c0c1eb6ceeb
1 .\"
2 .\" This file and its contents are supplied under the terms of the
3 .\" Common Development and Distribution License ("CDDL"), version 1.0.
4 .\" You may only use this file in accordance with the terms of version
5 .\" 1.0 of the CDDL.
6 .\"
7 .\" A full copy of the text of the CDDL should have accompanied this
8 .\" source.  A copy of the CDDL is also available via the Internet at
9 .\" http://www.illumos.org/license/CDDL.
10 .\"
11 .\"
12 .\" Copyright 2015 Joyent, Inc.
13 .\"
14 .Dd May 11, 2016
15 .Dt PCREATE_AGENT 3PROC
16 .Os
17 .Sh NAME
18 .Nm Pcreate_agent
19 .Nd create the agent LWP
20 .Sh LIBRARY
21 .Lb libproc
22 .Sh SYNOPSIS
23 .In libproc.h
24 .Ft int
25 .Fo Pcreate_agent
26 .Fa "struct ps_prochandle *P"
27 .Fc
28 .Sh DESCRIPTION
29 The
30 .Fn Pcreate_agent
31 function creates the agent LWP in the process represented by the handle
32 .Fa P .
33 The agent LWP is used as a means to force system calls to be invoked on
34 the controlled process.
35 For more information on the agent LWP, see
36 .Xr proc 4 .
37 .Pp
38 The agent LWP cannot be created for process handles corresponding to
39 core files, zombie processes, processes that have yet to run, and ELF
40 objects.
41 .Pp
42 The
43 .Fn Pcreate_agent
44 function is reentrant.
45 It may be entered recursively.
46 The act of creating the agent LWP will cause the process to be stopped.
47 For every call to the
48 .Fn Pcreate_agent
49 function, a corresponding call to
50 .Xr Pdestroy_agent 3PROC
51 is required.
52 .Sh RETURN VALUES
53 Upon successful completion, the
54 .Fn Pcreate_agent
55 function returns
56 .Sy 0
57 and creates the agent LWP.
58 Otherwise,
59 .Sy -1
60 is returned,
61 .Sy errno
62 is set to indicate the error, and the agent LWP is not created.
63 .Sh ERRORS
64 The
65 .Fn Pcreate_agent
66 function will fail if:
67 .Bl -tag -width Er
68 .It Er ENOENT
69 The process referred to by
70 .Fa P
71 is a core file, zombie, ELF object, or has not begun execution.
72 .El
73 .Pp
74 Note, it is possible for other error numbers to be returned.
75 If they are, they represent unanticipated failure.
76 .Sh INTERFACE STABILITY
77 .Sy Uncommitted
78 .Sh MT-LEVEL
79 See
80 .Sy LOCKING
82 .Xr libproc 3LIB .
83 .Sh SEE ALSO
84 .Xr libproc 3LIB ,
85 .Xr Pdestroy_agent 3PROC ,
86 .Xr proc 4