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 PLWP_GETPSINFO 3PROC
  16 .Os
  17 .Sh NAME
  18 .Nm Plwp_getpsinfo
  19 .Nd get thread specific ps information
  20 .Sh LIBRARY
  21 .Lb libproc
  22 .Sh SYNOPSIS
  23 .In libproc.h
  24 .Ft int
  25 .Fo Plwp_getpsinfo
  26 .Fa "struct ps_prochandle *P"
  27 .Fa "lwpid_t lwpid"
  28 .Fa "lwpsinfo_t *lps"
  29 .Fc
  30 .Sh DESCRIPTION
  31 The
  32 .Fn Plwp_getpsinfo
  33 function
  34 looks up the thread-specific
  35 .Xr ps 1
  36 information for the thread specified by
  37 .Fa lwpid
  38 in the process handle
  39 .Fa P .
  40 The caller should provide a pointer to an
  41 .Sy lwpsinfo_t ,
  42 .Fa lps ,
  43 whose definition can be found in
  44 .Xr proc 4 .
  45 .Fa lps
  46 will be filled in with information such as the thread's id, its current
  47 state, priority, and run-time.
  48 .Pp
  49 The
  50 .Fn Plwp_getpsinfo
  51 function only works on process handles that refer to active processes
  52 and core files, it does not work on process handles that refer to
  53 individual files.
  54 .Sh RETURN VALUES
  55 Upon successful completion, the
  56 .Fn Plwp_getpsinfo
  57 function returns
  58 .Sy 0
  59 and
  60 .Fa lps
  61 is filled in with the
  62 thread-specific
  63 .Xr ps 1
  64 information.
  65 Otherwise,
  66 .Sy -1
  67 is returned and
  68 .Sy errno
  69 is set to indicate the error.
  70 .Sh ERRORS
  71 For a full list of possible errors also see the
  72 .Sy DIAGNOSTICS
  73 section in
  74 .Xr proc 4 .
  75 .Pp
  76 The
  77 .Fn Plwp_getpsinfo
  78 function will fail if:
  79 .Bl -tag -width Er
  80 .It Er ENODATA
  81 .Fa P
  82 refers to a file handle obtained through
  83 .Xr Pgrab_file 3PROC .
  84 .It Er EINVAL
  85 The process handle
  86 .Fa P
  87 refers to a core file and the specified thread does not exist.
  88 .It Er ENOENT
  89 The process handle
  90 .Fa P
  91 refers to an active process and the specified thread does not exist.
  92 .El
  93 .Sh INTERFACE STABILITY
  94 .Sy Uncommitted
  95 .Sh MT-LEVEL
  96 See
  97 .Sy LOCKING
  98 in
  99 .Xr ps 1 ,
 100 .Xr libproc 3LIB .
 101 .Sh SEE ALSO
 102 .Xr libproc 3LIB ,
 103 .Xr proc 4