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


NAME


lgrp_mem_size - return the memory size of the given lgroup

SYNOPSIS


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

lgrp_mem_size_t lgrp_mem_size(lgrp_cookie_t cookie, lgrp_id_t lgrp,
int type, int content);


DESCRIPTION


The lgrp_mem_size() function takes a cookie representing a snapshot of
the lgroup hierarchy. The cookie was obtained by calling
lgrp_init(3LGRP). The lgrp_mem_size() function returns the memory size of
the given lgroup in bytes. The type argument should be set to one of the
following values:

LGRP_MEM_SZ_FREE /* free memory */
LGRP_MEM_SZ_INSTALLED /* installed memory */


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.


The total sizes include all the memory in the lgroup including its
children, while the others reflect only the memory contained directly in
the given lgroup.

RETURN VALUES


Upon successful completion, the size in bytes is returned. Otherwise, -1
is returned and errno is set to indicate the error.

ERRORS


The lgrp_mem_size() 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(5) for descriptions of the following attributes:


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

SEE ALSO


lgrp_init(3LGRP), lgrp_cpus(3LGRP), lgrp_resources(3LGRP), liblgrp(3LIB),
attributes(5)


January 26, 2005 LGRP_MEM_SIZE(3LGRP)