pset_getattr(2)pset_getattr(2)NAMEpset_getattr(), pset_setattr() - manage processor set attributes
SYNOPSISDESCRIPTION
The function returns the current value of the attribute type for the
processor set pset in the memory location pointed to by val.
The function assigns the value val to the attribute type for processor
set pset.
A user can not change the attribute values for the system default pro‐
cessor set using the function.
A user with the privilege or a user with READ permission for the pro‐
cessor set may query any attribute values.
The following processor set attributes may be queried or changed
through these functions:
The GID (group id) of the processor set owner.
The creator's GID is assigned at processor set creation time.
A user with the privilege or the pset owner may change the
value of this attribute.
The UID of the processor set owner.
The creator is assigned as the owner at processor set cre‐
ation time. A user with the privilege or the pset owner may
change the value of this attribute.
The access permission bitmask for the processor set.
These are defined similar to file access permissions. There
are three types of access:
The user can bind its process or thread to the processor set
using
the function (see pset_bind(2)).
The user can query the processor set attributes.
The user can modify the processor set attributes and configu‐
ration, and
destroy the processor set.
The following bit values are used for the access bitmask:
All users in processor set owner's group have EXEC access.
All users in processor set owner's group have READ access.
All users in processor set owner's group have WRITE access.
All others have EXEC access.
All others have READ access.
All others have WRITE access.
The processor set owner has EXEC access.
The processor set owner has READ access.
The processor set owner has WRITE access.
A newly created processor set by default has READ and EXEC
access for everyone, but WRITE access only for the processor
set owner.
A user with the privilege or the pset owner may change the
value of the attribute.
A value of
indicates that processors in this processor set are config‐
ured to receive external interrupts. It may be assigned a
value of to disable all processors in the processor set from
receiving and processing external I/O interrupts. Not all
platforms may support this feature. By default, I/O inter‐
rupts are enabled on all processors. The feature may be use‐
ful for some realtime applications where unpredictable inter‐
rupt handling overhead may adversely impact the application's
response time requirements.
Only a user with the privilege may change this attribute.
Indicates the behavior when a request to destroy a
non-empty processor set is made through the function. Possi‐
ble values are:
Reassign all processors in the processor set
pset to the system default processor set. Migrate
all threads and processes bound to this processor
set to the system default processor set. This is
the default value for this attribute.
Make the request fail with an
error if there are threads or processes bound to
the processor set or if there are processors
assigned to the processor set.
Make the request fail with an
error if there are active threads or processes
bound to the processor set. Otherwise, perform the
operation by reassigning the processors in the pset
to the system default processor set.
A user with the privilege or a user with WRITE permissions
may change the value of this attribute.
Indicates the behavior when a request to bind a
process or a thread to an empty processor set is made through
the function. Possible values are:
Go through with the request.
However, the affected threads will not be scheduled to
execute until a processor is assigned to the empty
processor set.
Reject the request with an
error. This is the default value for this attribute.
A user with the privilege or a user with WRITE permissions may
change the value of this attribute.
Indicates the behavior when a request to remove the
last processor from a processor set is made through the func‐
tion, or through the processor deallocation functionality. Pos‐
sible values are:
Make the request fail if there are active threads
and processes assigned to the processor set.
Assign the processor to the specified processor
set, and migrate all threads and processes to the sys‐
tem default processor set This is the default value
for this attribute.
A user with the privilege or a user with WRITE permissions may
change the value of the attribute.
The LCPU attribute of a processor set indicates whether the physical
processor
cores in a pset are enabled with logical processors (LCPUs). On
systems with the Hyper-Threading (HT) feature enabled, each pro‐
cessor core may have more than one hyper-thread per physical
processor core. Each hyper-thread is represented to the operat‐
ing system and applications as a logical processor (LCPU).
The can be set for the default processor set using the command.
This attribute is supported only on system with the Hyper-
Threading feature. If this feature is disabled at the firmware
level or is not supported, this attribute cannot change.
Enable the LCPUs in a processor set.
This is the default value for systems with the Hyper-
Threading feature enabled.
Disable the LCPUs in the processor set.
This is the default value for the systems without the
Hyper-Threading feature or systems with the Hyper-
Threading disabled in the firmware.
The default value for any attribute can be assigned using the value in
the function.
Security Restrictions
Some or all of the actions associated with this system call require the
privilege. Processes owned by the superuser have this privilege. Pro‐
cesses owned by other users may have this privilege, depending on sys‐
tem configuration. See privileges(5) for more information about privi‐
leged access on systems that support fine-grained privileges.
RETURN VALUE
The functions return zero on successful completion. Otherwise, -1 is
returned and errno is set to indicate the error.
ERRORS
or fails if one or more of the following is true:
The memory location pointed to by
val is not writable by the user for
The specified processor set
pset, the attribute type, or the attribute val is invalid.
The memory location pointed to by
val is NULL for
The processor set functionality is not supported by the
underlying HP-UX version.
The requested attribute value is not supported for the
function.
The user does not have the necessary permissions to query or
change the processor set attributes.
AUTHOR
and were developed by HP.
SEE ALSOkctune(1M), psrset(1M), pset_assign(2), pset_bind(2), pset_create(2),
pset_ctl(2), pset_destroy(2), privgrp(4), lcpu_attr(5), privileges(5).
pset_getattr(2)