NAME
pset_info − get information about a processor set
SYNOPSIS
#include <sys/pset.h>
int pset_info(psetid_t pset, int *type, uint_t *numcpus, processorid_t *cpulist);
DESCRIPTION
The pset_info() function returns information on the processor set pset.
If type
is non-null, then on successful completion the type of the
processor set will be stored in the location pointed to by
type. Processor set types can have the following
values:
PS_SYSTEM
The processor set was created by the system. Processor sets of this type cannot be modified or removed by the user, but LWPs and processes can be bound to them using pset_bind(2).
PS_PRIVATE
The processor set was created by pset_create(2) and can be modified by pset_assign(2) and removed by pset_destroy(2). LWPs and processes can also be bound to this processor set using pset_bind().
If numcpus is non-null, then on successful completion the number of processors in the processor set will be stored in the location pointed to by numcpus.
If numcpus and cpulist are both non-null, then cpulist points to a buffer where a list of processors assigned to the processor set is to be stored, and numcpus points to the maximum number of processor IDs the buffer can hold. On successful completion, the list of processors up to the maximum buffer size is stored in the buffer pointed to by cpulist.
If pset is PS_NONE, the list of processors not assigned to any processor set will be stored in the buffer pointed to by cpulist, and the number of such processors will be stored in the location pointed to by numcpus. The location pointed to by type will be set to PS_NONE.
If pset is PS_MYID, the processor list and number of processors returned will be those of the processor set to which the caller is bound. If the caller is not bound to a processor set, the result will be equivalent to setting pset to PS_NONE.
RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, −1 is returned and errno is set to indicate the error.
ERRORS
The
pset_info() function will fail if:
EFAULT
The location pointed to by type, numcpus, or cpulist was not null and not writable by the user.
EINVAL
An invalid processor set ID was specified.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
SEE ALSO
psrinfo(1M), psrset(1M), processor_info(2), pset_assign(2), pset_bind(2), pset_create(2), pset_destroy(2), pset_getloadavg(3C), attributes(5)