LGRP_HOME(3LGRP) Locality Group Library Functions LGRP_HOME(3LGRP)

NAME


lgrp_home - get home lgroup

SYNOPSIS


cc [ flag... ] file... -llgrp [ library... ]
#include <sys/lgrp_user.h>

lgrp_id_t lgrp_home(idtype_t idtype, id_t id);


DESCRIPTION


The lgrp_home() function returns the ID of the home lgroup for the given
process or thread. A thread can have an affinity for an lgroup in the
system such that the thread will tend to be scheduled to run on that
lgroup and allocate memory from there whenever possible. The lgroup with
the strongest affinity that the thread can run on is known as the "home
lgroup" of the thread. If the thread has no affinity for any lgroup that
it can run on, the operating system will choose a home for it.


The idtype argument should be P_PID to specify a process and the id
argument should be its process ID. Otherwise, the idtype argument should
be P_LWPID to specify a thread and the id argument should be its LWP ID.
The value P_MYID can be used for the id argument to specify the current
process or thread.

RETURN VALUES


Upon successful completion, lgrp_home() returns the ID of the home lgroup
of the specified process or thread. Otherwise, -1 is returned and errno
is set to indicate the error.

ERRORS


The lgrp_home() function will fail if:

EINVAL
The ID type is not valid.


EPERM
The effective user of the calling process does not have
appropriate privileges, and its real or effective user ID does
not match the real or effective user ID of one of the threads.


ESRCH
The specified process or thread was not found.


ATTRIBUTES


See attributes(7) for descriptions of the following attributes:


+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Evolving |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+

SEE ALSO


lgrp_affinity_get(3LGRP), lgrp_init(3LGRP), attributes(7)

June 1, 2003 LGRP_HOME(3LGRP)