LGRP_CPUS(3LGRP) Locality Group Library Functions LGRP_CPUS(3LGRP)
NAME
lgrp_cpus - get CPU IDs contained in specified lgroup
SYNOPSIS
cc [
flag... ]
file...
-llgrp [
library... ]
#include <sys/lgrp_user.h>
int lgrp_cpus(
lgrp_cookie_t cookie,
lgrp_id_t lgrp,
processorid_t *cpuids,
uint_t count,
int content);
DESCRIPTION
The
lgrp_cpus() function takes a
cookie representing a snapshot of
the lgroup hierarchy obtained from
lgrp_init(3LGRP) and returns the
number of CPUs in the lgroup specified by
lgrp. If both the
cpuids[]
argument is non-null and the count is non-zero,
lgrp_cpus() stores up
to the specified count of CPU IDs into the
cpuids[] array.
The
content argument should be set to one of the following values to
specify whether the direct contents or everything in this lgroup
should be returned:
LGRP_CONTENT_ALL /* everything in this lgroup */
LGRP_CONTENT_DIRECT /* directly contained in lgroup */
LGRP_CONTENT_HIERARCHY /* everything within this hierarchy (for
compatibility only, use LGRP_CONTENT_ALL) */
The
LGRP_CONTENT_HIERARCHY value can still be used, but is being
replaced by
LGRP_CONTENT_ALL.
RETURN VALUES
Upon successful completion, the number of CPUs in the given lgroup is
returned. Otherwise, -1 is returned and
errno is set to indicate the
error.
ERRORS
The
lgrp_cpus() function will fail if:
EINVAL The specified cookie, lgroup ID, or one of the flags is not
valid.
ESRCH The specified lgroup ID 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_init(3LGRP),
lgrp_mem_size(3LGRP),
lgrp_resources(3LGRP),
liblgrp(3LIB),
attributes(7) January 26, 2005 LGRP_CPUS(3LGRP)