thr_set_name.2 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  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
  41. The
  42. .Fn thr_set_name
  43. system call sets the user-visible name for the thread with the identifier
  44. .Va id
  45. in the current process to the NUL-terminated string
  46. .Va name .
  47. The name will be silently truncated to fit into a buffer of
  48. .Dv MAXCOMLEN + 1
  49. bytes.
  50. The thread name can be seen in the output of the
  51. .Xr ps 1
  52. and
  53. .Xr top 1
  54. commands, in the kernel debuggers and kernel tracing facility outputs,
  55. and in userland debuggers and program core files, as notes.
  56. .Sh RETURN VALUES
  57. If successful,
  58. .Fn thr_set_name
  59. returns zero; otherwise, \-1 is returned, and
  60. .Va errno
  61. is set to indicate the error.
  62. .Sh ERRORS
  63. The
  64. .Fn thr_set_name
  65. system call may return the following errors:
  66. .Bl -tag -width Er
  67. .It Bq Er EFAULT
  68. The memory pointed to by the
  69. .Fa name
  70. argument is not valid.
  71. .It Bq Er ESRCH
  72. The thread with the identifier
  73. .Fa id
  74. does 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
  88. The
  89. .Fn thr_set_name
  90. system call is non-standard and is used by the
  91. .Lb libthr .
  92. .Sh HISTORY
  93. The
  94. .Fn thr_set_name
  95. system call first appeared in
  96. .Fx 5.2 .