1dea9f5e6SRobert Mustacchi.\" 2dea9f5e6SRobert Mustacchi.\" This file and its contents are supplied under the terms of the 3dea9f5e6SRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0. 4dea9f5e6SRobert Mustacchi.\" You may only use this file in accordance with the terms of version 5dea9f5e6SRobert Mustacchi.\" 1.0 of the CDDL. 6dea9f5e6SRobert Mustacchi.\" 7dea9f5e6SRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this 8dea9f5e6SRobert Mustacchi.\" source. A copy of the CDDL is also available via the Internet at 9dea9f5e6SRobert Mustacchi.\" http://www.illumos.org/license/CDDL. 10dea9f5e6SRobert Mustacchi.\" 11dea9f5e6SRobert Mustacchi.\" 12*a7d7cafeSRobert Mustacchi.\" Copyright 2023 Oxide Computer Company 13dea9f5e6SRobert Mustacchi.\" 14*a7d7cafeSRobert Mustacchi.Dd November 27, 2023 15dea9f5e6SRobert Mustacchi.Dt PROC_GET_LWPSINFO 3PROC 16dea9f5e6SRobert Mustacchi.Os 17dea9f5e6SRobert Mustacchi.Sh NAME 18*a7d7cafeSRobert Mustacchi.Nm proc_get_lwpsinfo , 19*a7d7cafeSRobert Mustacchi.Nm proc_get_lwpstatus 20*a7d7cafeSRobert Mustacchi.Nd get thread ps and status information 21*a7d7cafeSRobert Mustacchi.Sh LIBRARY 22dea9f5e6SRobert Mustacchi.Lb libproc 23*a7d7cafeSRobert Mustacchi.Sh SYNOPSIS 24*a7d7cafeSRobert Mustacchi.In libproc.h 25dea9f5e6SRobert Mustacchi.Ft int 26dea9f5e6SRobert Mustacchi.Fo proc_get_lwpsinfo 27dea9f5e6SRobert Mustacchi.Fa "pid_t pid" 28dea9f5e6SRobert Mustacchi.Fa "uint_t thr" 29*a7d7cafeSRobert Mustacchi.Fa "lwpsinfo_t *lwpps" 30*a7d7cafeSRobert Mustacchi.Fc 31*a7d7cafeSRobert Mustacchi.Ft int 32*a7d7cafeSRobert Mustacchi.Fo proc_get_lwpstatus 33*a7d7cafeSRobert Mustacchi.Fa "pid_t pid" 34*a7d7cafeSRobert Mustacchi.Fa "uint_t thr" 35*a7d7cafeSRobert Mustacchi.Fa "lwpstatus_t *lwpst" 36dea9f5e6SRobert Mustacchi.Fc 37dea9f5e6SRobert Mustacchi.Sh DESCRIPTION 38dea9f5e6SRobert MustacchiThe 39dea9f5e6SRobert Mustacchi.Fn proc_get_lwpsinfo 40dea9f5e6SRobert Mustacchifunction is a convenient way to read the /proc lwpsinfo for the specific 41dea9f5e6SRobert Mustacchithread, 42dea9f5e6SRobert Mustacchi.Fa thr , 43dea9f5e6SRobert Mustacchifound in the process 44dea9f5e6SRobert Mustacchi.Fa pid . 45dea9f5e6SRobert MustacchiThe information from the 46dea9f5e6SRobert Mustacchi.Pa lwpsinfo 47dea9f5e6SRobert Mustacchifile will be placed in 48*a7d7cafeSRobert Mustacchi.Fa lwpps . 49dea9f5e6SRobert MustacchiThe definition of the 50dea9f5e6SRobert Mustacchi.Vt lwpsinfo_t 51dea9f5e6SRobert Mustacchistructure may be found in 52bbf21555SRichard Lowe.Xr proc 5 . 53dea9f5e6SRobert Mustacchi.Pp 54*a7d7cafeSRobert MustacchiThe 55*a7d7cafeSRobert Mustacchi.Fn proc_get_lwpstatus 56*a7d7cafeSRobert Mustacchifunction is a convenient way to read the /proc lwpstatus for the specific 57*a7d7cafeSRobert Mustacchithread, 58*a7d7cafeSRobert Mustacchi.Fa thr , 59*a7d7cafeSRobert Mustacchifound in the process 60*a7d7cafeSRobert Mustacchi.Fa pid . 61*a7d7cafeSRobert MustacchiThe information from the 62*a7d7cafeSRobert Mustacchi.Pa lwpstatus 63*a7d7cafeSRobert Mustacchifile will be placed in 64*a7d7cafeSRobert Mustacchi.Fa lwpst . 65*a7d7cafeSRobert MustacchiThe definition of the 66*a7d7cafeSRobert Mustacchi.Vt lwpstatus_t 67*a7d7cafeSRobert Mustacchistructure may be found in 68*a7d7cafeSRobert Mustacchi.Xr proc 5 . 69*a7d7cafeSRobert Mustacchi.Pp 70dea9f5e6SRobert MustacchiThe thread identifier for a thread is the same between POSIX pthreads, 71dea9f5e6SRobert MustacchiC11 threads, and the native threads API. 72dea9f5e6SRobert MustacchiIt is safe to pass one of those identifiers in as 73dea9f5e6SRobert Mustacchi.Fa thr 74dea9f5e6SRobert Mustacchior to use a specific number. 75dea9f5e6SRobert Mustacchi.Sh RETURN VALUES 76dea9f5e6SRobert MustacchiUpon successful completion, the 77*a7d7cafeSRobert Mustacchi.Fn proc_get_lwpsinfo 78*a7d7cafeSRobert Mustacchiand 79*a7d7cafeSRobert Mustacchi.Fn proc_get_lwpstatus 80*a7d7cafeSRobert Mustacchifunctions return 81dea9f5e6SRobert Mustacchi.Sy 0 . 82dea9f5e6SRobert MustacchiOtherwise, 83dea9f5e6SRobert Mustacchi.Sy -1 84dea9f5e6SRobert Mustacchiis returned to indicate an error occurred. 85dea9f5e6SRobert Mustacchi.Sh INTERFACE STABILITY 86dea9f5e6SRobert Mustacchi.Sy Uncommitted 87dea9f5e6SRobert Mustacchi.Sh MT-LEVEL 88dea9f5e6SRobert Mustacchi.Sy MT-Safe 89dea9f5e6SRobert Mustacchi.Sh SEE ALSO 90dea9f5e6SRobert Mustacchi.Xr libproc 3LIB , 91bbf21555SRichard Lowe.Xr proc 5 92