nsg_get_nsgs(3)nsg_get_nsgs(3)NAMEnsg_get_nsgs - Returns a list NUMA Scheduling Groups (libnuma library)
SYNOPSIS
#include <numa.h>
int nsg_get_nsgs(
nsgid_t *nsgidlist,
int numnsgs );
PARAMETERS
Points to an array that receives the NUMA Scheduling Group (NSG) iden‐
tifiers. Specifies the maximum number of nsgid_t entries in nsgidlist.
DESCRIPTION
The nsg_get_nsgs() function returns a list of NSGs that are active on
the system in the buffer pointed to by nsgidlist. The argument numnsgs
specifies the number of nsgid_t entries that can be accommodated in the
buffer. The list is terminated by a NULL entry.
The required size of the buffer can be obtained by first calling
nsg_get_nsgs() with a numnsgs set to zero. In this case, the number of
NSGs active on the system will be reported in nsgidlist[0]. As always,
on a dynamically changing system, the number of entries may be differ‐
ent by the time it is used for the numnsgs argument to the second
nsg_get_nsgs() call.
RESTRICTIONS
The effective user ID of the calling process must be equal to the value
of nsg_perm.cuid or nsg_perm.uid in the associated nsgid_ds structure;
or the calling process must have read permissions to each NSG. If the
caller does not have the proper permission, that NSG will not be
reported in nsgidlist.
RETURN VALUES
Success. However, if the errno is set to E2BIG, more NSGs than numnsgs
were available. Failure. In this case, errno is set to indicate the
error.
ERRORS
If the nsg_get_nsgs() function fails, it sets errno to the following
value for the specified condition: The nsgidlist argument points to an
invalid address.
SEE ALSO
Functions: nsg_attach_pid(3), nsg_get(3), nsg_get_pids(3),
numa_intro(3)
Files: numa_types(4)nsg_get_nsgs(3)