xref: /freebsd/lib/libsys/thr_set_name.2 (revision abd87254)
1.\" Copyright (c) 2016 The FreeBSD Foundation, Inc.
2.\"
3.\" This documentation was written by
4.\" Konstantin Belousov <kib@FreeBSD.org> under sponsorship
5.\" from the FreeBSD Foundation.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26.\" SUCH DAMAGE.
27.\"
28.Dd May 5, 2020
29.Dt THR_SET_NAME 2
30.Os
31.Sh NAME
32.Nm thr_set_name
33.Nd set user-visible thread name
34.Sh LIBRARY
35.Lb libc
36.Sh SYNOPSIS
37.In sys/thr.h
38.Ft int
39.Fn thr_set_name "long id" "const char *name"
40.Sh DESCRIPTION
41The
42.Fn thr_set_name
43system call sets the user-visible name for the thread with the identifier
44.Va id
45in the current process to the NUL-terminated string
46.Va name .
47The name will be silently truncated to fit into a buffer of
48.Dv MAXCOMLEN + 1
49bytes.
50The thread name can be seen in the output of the
51.Xr ps 1
52and
53.Xr top 1
54commands, in the kernel debuggers and kernel tracing facility outputs,
55and in userland debuggers and program core files, as notes.
56.Sh RETURN VALUES
57If successful,
58.Fn thr_set_name
59returns zero; otherwise, \-1 is returned, and
60.Va errno
61is set to indicate the error.
62.Sh ERRORS
63The
64.Fn thr_set_name
65system call may return the following errors:
66.Bl -tag -width Er
67.It Bq Er EFAULT
68The memory pointed to by the
69.Fa name
70argument is not valid.
71.It Bq Er ESRCH
72The thread with the identifier
73.Fa id
74does not exist in the current process.
75.El
76.Sh SEE ALSO
77.Xr ps 1 ,
78.Xr _umtx_op 2 ,
79.Xr thr_exit 2 ,
80.Xr thr_kill 2 ,
81.Xr thr_kill2 2 ,
82.Xr thr_new 2 ,
83.Xr thr_self 2 ,
84.Xr pthread_set_name_np 3 ,
85.Xr ddb 4 ,
86.Xr ktr 9
87.Sh STANDARDS
88The
89.Fn thr_set_name
90system call is non-standard and is used by the
91.Lb libthr .
92.Sh HISTORY
93The
94.Fn thr_set_name
95system call first appeared in
96.Fx 5.2 .
97