grio_avail(3x)
grio_avail - query remaining bandwidth on a GRIO managed filesystem
As shipped in IRIX 6.5.30. Added in IRIX 6.5.30.
This page could not be fully tidied (no-header); it is shown as printed.
NAME grio_avail - query remaining bandwidth on a GRIO managed filesystem C SYNOPSIS #include <grio2.h> int grio_avail( const char *fs, grio_off_t *bytes, grio_msecs_t *msecs); cc ... -lgrio2 PARAMETERS fs A path identifying the target filesystem. bytes, msecs The available bandwidth expressed as the ratio bytes per msecs. DESCRIPTION grio_avail returns the amount of guaranteed rate bandwidth still available on the specified filesystem. The returned bandwidth is the qualified bandwidth of the filesystem minus bandwidth reserved for active GRIO streams and any bandwidth statically allocated for non-GRIO I/O using the -m option to ggd2. Refer to ggd2(1M) While ggd2 temporarily allows unreserved bandwidth to be used for servicing non-GRIO I/O, this bandwidth is reclaimed when a GRIO reservation is received, and is therefore considered to be available. fs must be either the mount point of the filesystem, or the device special file on which it is located. The available bandwidth is returned in the parameters bytes and msecs. msecs is referred to as the reservation interval. The GRIO implementation may use this parameter to provide a hint to user applications about the performance characteristics of the GRIO scheduler. Applications must not rely on msecs being any particular value, and should always normalize the returned bandwidth by computing the ratio bytes per msecs. DIAGNOSTICS On success, 0 is returned and bytes and msecs contain the bandwidth currently available from the filesystem. Otherwise -1 is returned and errno is set to indicate the error. The following error codes are defined: EIO The library could not communicate with ggd2. EINVAL An argument was invalid. EPERM The process does not have root permissions or CAP_DEVICE_MGMT privilege. FILES /etc/griotab SEE ALSO grio2(5), grio_bind(3X), grio_get_stream(3X) grio_modify(3X), grio_release(3X), grio_reserve(3X), grio_unbind(3X)