1 PLWP_GETXREGS(3PROC) Process Control Library Functions PLWP_GETXREGS(3PROC) 2 3 NAME 4 Plwp_getxregs, Plwp_setxregs - get and set extended register state 5 6 LIBRARY 7 Process Control Library (libproc, -lproc) 8 9 SYNOPSIS 10 #include <libproc.h> 11 12 int 13 Plwp_getxregs(struct ps_prochandle *P, lwpid_t lwpid, 14 prxregset_t *xregs); 15 16 int 17 Plwp_setxregs(struct ps_prochandle *P, lwpid_t lwpid, 18 const prxregset_t *xregs); 19 20 DESCRIPTION 21 The Plwp_getxregs() and Plwp_setxregs() functions get and set the 22 extended register state of the thread lwpid in the process handle P. 23 24 The extended register state is defined by the architecture. These 25 registers may refer to optional registers that have become common on the 26 platform, but are not part of the standard ABI and thus not covered by 27 functions such as Plwp_getregs(3PROC) and Plwp_getfpregs(3PROC). 28 29 The Plwp_getxregs() function gets the extended register state information 30 and places it into xregs. Where as the Plwp_setxregs() function sets the 31 extended register state information in xregs for the process handle P. 32 33 Processes must be stopped prior to obtaining the register state of 34 individual threads. Processes may be stopped with Pstop(3PROC). 35 36 The prxregset_t structure is described in proc(4). 37 38 One may not set the register values of a process that is not an active 39 process, e.g. a process handle that refers to a file or a core file. 40 41 RETURN VALUES 42 Upon successful completion, the Plwp_getxregs() and Plwp_setxregs() 43 functions return 0 and get or set the register state. Otherwise, -1 is 44 returned and errno is set to indicate the error. 45 46 ERRORS 47 For a full list of possible errors see the DIAGNOSTICS section in 48 proc(4). 49 50 The Plwp_getxregs() and Plwp_setxregs() function will fail if: 51 52 ENODATA The process handle P does not have any extended 53 register state information. 54 55 EBUSY The process handle P refers to a live process and it 56 is not stopped. 57 58 ENOENT The process handle P refers to a live process and 59 there is no thread with id lwpid. 60 61 EINVAL The process handle P refers to a core file and there 62 is no thread with id lwpid. 63 64 ARCHITECTURE 65 The Plwp_getxregs() and Plwp_setxregs() functions are only available on 66 SPARC platforms. 67 68 INTERFACE STABILITY 69 Uncommitted 70 71 MT-LEVEL 72 See LOCKING in libproc(3LIB). 73 74 SEE ALSO 75 libproc(3LIB), Plwp_getfpregs(3PROC), Plwp_getregs(3PROC), 76 Plwp_setfpregs(3PROC), Plwp_setregs(3PROC), Pstop(3PROC), proc(4) 77 78 illumos May 11, 2016 illumos