xref: /illumos-gate/usr/src/man/man3proc/Psetrun.3proc (revision bbf215553c7233fbab8a0afdf1fac74c44781867)
143051d27SRobert Mustacchi.\"
243051d27SRobert Mustacchi.\" This file and its contents are supplied under the terms of the
343051d27SRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0.
443051d27SRobert Mustacchi.\" You may only use this file in accordance with the terms of version
543051d27SRobert Mustacchi.\" 1.0 of the CDDL.
643051d27SRobert Mustacchi.\"
743051d27SRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this
843051d27SRobert Mustacchi.\" source.  A copy of the CDDL is also available via the Internet at
943051d27SRobert Mustacchi.\" http://www.illumos.org/license/CDDL.
1043051d27SRobert Mustacchi.\"
1143051d27SRobert Mustacchi.\"
1243051d27SRobert Mustacchi.\" Copyright 2015 Joyent, Inc.
1343051d27SRobert Mustacchi.\"
1443051d27SRobert Mustacchi.Dd May 11, 2016
1543051d27SRobert Mustacchi.Dt PSETRUN 3PROC
1643051d27SRobert Mustacchi.Os
1743051d27SRobert Mustacchi.Sh NAME
1843051d27SRobert Mustacchi.Nm Psetrun ,
1943051d27SRobert Mustacchi.Nm Lsetrun
2043051d27SRobert Mustacchi.Nd run a stopped process or thread
21ab618543SJohn Levon.Sh LIBRARY
2243051d27SRobert Mustacchi.Lb libproc
23ab618543SJohn Levon.Sh SYNOPSIS
2443051d27SRobert Mustacchi.In libproc.h
2543051d27SRobert Mustacchi.Ft int
2643051d27SRobert Mustacchi.Fo Psetrun
2743051d27SRobert Mustacchi.Fa "struct ps_prochandle *P"
2843051d27SRobert Mustacchi.Fa "int sig"
2943051d27SRobert Mustacchi.Fa "int flags"
3043051d27SRobert Mustacchi.Fc
3143051d27SRobert Mustacchi.Ft int
3243051d27SRobert Mustacchi.Fo Lsetrun
3343051d27SRobert Mustacchi.Fa "struct ps_lwphandle *L"
3443051d27SRobert Mustacchi.Fa "int sig"
3543051d27SRobert Mustacchi.Fa "int flags"
3643051d27SRobert Mustacchi.Fc
3743051d27SRobert Mustacchi.Sh DESCRIPTION
3843051d27SRobert MustacchiThe
3943051d27SRobert Mustacchi.Fn Psetrun
4043051d27SRobert Mustacchifunction resumes the stopped process handle
4143051d27SRobert Mustacchi.Fa P
4243051d27SRobert Mustacchiand transitions the process to running.
4343051d27SRobert MustacchiIf
4443051d27SRobert Mustacchi.Fa sig
4543051d27SRobert Mustacchiis non-zero, then the
4643051d27SRobert Mustacchi.Fn Psetrun
4772d3dbb9SYuri Pankovfunction causes the signal to be delivered.
4872d3dbb9SYuri PankovSee
4943051d27SRobert Mustacchi.Xr signal.h 3HEAD
5043051d27SRobert Mustacchifor a list of valid signal identifiers.
5143051d27SRobert Mustacchi.Pp
5243051d27SRobert MustacchiThe
5343051d27SRobert Mustacchi.Fa flags
5472d3dbb9SYuri Pankovmember modifies the behavior of the resumed handle.
5572d3dbb9SYuri PankovThe following values may be combined by a bitwise-inclusive-OR:
5643051d27SRobert Mustacchi.Bl -tag -width Dv -offset indent
5743051d27SRobert Mustacchi.It Dv PRCSIG
5843051d27SRobert MustacchiClears the current signal, if any.
5943051d27SRobert Mustacchi.It Dv PRCFAULT
6043051d27SRobert MustacchiClears the current fault, if any.
6143051d27SRobert Mustacchi.It Dv PRSTEP
6243051d27SRobert MustacchiIndicates that the thread should single-step over the next machine
6372d3dbb9SYuri Pankovinstruction and upon completion, inject a trap.
6472d3dbb9SYuri PankovFor the specific mechanics of single-stepping and what traps or signals will be
6572d3dbb9SYuri Pankovinjected, see the
6643051d27SRobert Mustacchi.Sy PRSTEP
6743051d27SRobert Mustacchisection of
68*bbf21555SRichard Lowe.Xr proc 5 .
6943051d27SRobert Mustacchi.It Dv PRSABORT
7043051d27SRobert MustacchiIndicates that the thread should abort the system call that it is
7172d3dbb9SYuri Pankovcurrently executing.
7272d3dbb9SYuri PankovThis is only valid if the thread is stopped because it is asleep or right before
7372d3dbb9SYuri Pankova system call.
7472d3dbb9SYuri PankovThis will cause the system call to return
7543051d27SRobert Mustacchi.Er EINTR .
7643051d27SRobert Mustacchi.El
7743051d27SRobert Mustacchi.Pp
7843051d27SRobert MustacchiIf
7943051d27SRobert Mustacchiboth
8043051d27SRobert Mustacchi.Dv PRCSIG
8143051d27SRobert Mustacchiis specified and
8243051d27SRobert Mustacchi.Fa sig
8343051d27SRobert Mustacchiis non-zero, then the
8443051d27SRobert Mustacchi.Dv PRCSIG
8543051d27SRobert Mustacchirequest takes priority, and it will be treated as though
8643051d27SRobert Mustacchi.Fa sig
8743051d27SRobert Mustacchiwas passed the argument
8843051d27SRobert Mustacchi.Sy 0 .
8943051d27SRobert Mustacchi.Pp
9043051d27SRobert MustacchiWhen the process is resumed all extent tracing flags and register
9172d3dbb9SYuri Pankovchanges will be synchronized with the process.
9272d3dbb9SYuri PankovFor more information on resuming a thread see the
9343051d27SRobert Mustacchi.Sy PCRUN
9443051d27SRobert Mustacchisection in
95*bbf21555SRichard Lowe.Xr proc 5 .
9643051d27SRobert Mustacchi.Pp
9743051d27SRobert MustacchiNote, the
9843051d27SRobert Mustacchi.Fn Psetrun
9972d3dbb9SYuri Pankovfunction is only valid for active processes.
10072d3dbb9SYuri PankovIt will fail on process handles that refer to core files, zombie processes, and
10172d3dbb9SYuri PankovELF objects.
10243051d27SRobert Mustacchi.Pp
10343051d27SRobert MustacchiThe
10443051d27SRobert Mustacchi.Fn Lsetrun
10543051d27SRobert Mustacchifunction is equivalent to the
10643051d27SRobert Mustacchi.Fn Psetrun
10743051d27SRobert Mustacchifunction, except rather than operating on a process it operates on a
10843051d27SRobert Mustacchithread.
10943051d27SRobert Mustacchi.Fn Lsetrun
11043051d27SRobert Mustacchicauses the specified thread,
11143051d27SRobert Mustacchi.Fa L ,
11272d3dbb9SYuri Pankovto resume execution.
11372d3dbb9SYuri PankovWhereas
11443051d27SRobert Mustacchi.Fn Psetrun
11543051d27SRobert Mustacchicauses all threads in the process to resume.
11643051d27SRobert Mustacchi.Sh RETURN VALUES
11743051d27SRobert MustacchiUpon successful completion, the
11843051d27SRobert Mustacchi.Fn Psetrun
11943051d27SRobert Mustacchiand
12043051d27SRobert Mustacchi.Fn Lsetrun
12143051d27SRobert Mustacchifunctions return
12243051d27SRobert Mustacchi.Sy 0 .
12343051d27SRobert MustacchiOtherwise,
12443051d27SRobert Mustacchi.Sy -1
12543051d27SRobert Mustacchiis returned and
12643051d27SRobert Mustacchi.Sy errno
12743051d27SRobert Mustacchiis set to indicate the error.
12843051d27SRobert Mustacchi.Sh ERRORS
12943051d27SRobert MustacchiFor a full list of possible errors see the
13043051d27SRobert Mustacchi.Sy DIAGNOSTICS
13143051d27SRobert Mustacchisection in
132*bbf21555SRichard Lowe.Xr proc 5 .
13343051d27SRobert Mustacchi.Pp
13443051d27SRobert MustacchiThe
13543051d27SRobert Mustacchi.Fn Psetrun
13643051d27SRobert Mustacchiand
13743051d27SRobert Mustacchi.Fn Lsetrun
13843051d27SRobert Mustacchifunctions will fail if:
13943051d27SRobert Mustacchi.Bl -tag -width Er
14043051d27SRobert Mustacchi.It Er EBUSY
14143051d27SRobert MustacchiThe process handle
14243051d27SRobert Mustacchi.Fa P
14343051d27SRobert Mustacchiis not currently stopped or it is not stopped due to an event of
14443051d27SRobert Mustacchiinterest, a directed stop, or it is asleep in a system call.
14543051d27SRobert Mustacchi.El
14643051d27SRobert Mustacchi.Sh INTERFACE STABILITY
14743051d27SRobert Mustacchi.Sy Uncommitted
14843051d27SRobert Mustacchi.Sh MT-LEVEL
14943051d27SRobert MustacchiSee
15043051d27SRobert Mustacchi.Sy LOCKING
15143051d27SRobert Mustacchiin
15243051d27SRobert Mustacchi.Xr libproc 3LIB .
15343051d27SRobert Mustacchi.Sh SEE ALSO
15443051d27SRobert Mustacchi.Xr signal.h 3HEAD ,
15543051d27SRobert Mustacchi.Xr libproc 3LIB ,
15643051d27SRobert Mustacchi.Xr Pstatus 3PROC ,
157*bbf21555SRichard Lowe.Xr proc 5
158