NAMEgrio_modify - modify a GRIO reservation
C SYNOPSIS
#include <grio2.h>
int grio_modify(
grio_stream_id_t *stream_id,
grio_off_t *bytes, grio_msecs_t *msecs,
int flags)
cc ... -lgrio2
PARAMETERS
stream_id The ID of the stream to be modified.
bytes, msecs
The new bandwidth expressed as the ratio bytes per msecs.
flags Additional flags modifying the characteristics of the
reservation.
DESCRIPTIONgrio_modify is used to change the properties of an existing GRIO stream.
Reserved bandwidth can be both increased or decreased using this call.
Note that flags is currently unused and should be set to 0.
NOTEgrio_modify is a synchronous call and, when increasing a reservation, may
block while bandwidth is reallocated. This delay can be in the order of 1
or 2 seconds and applications should be designed to accommodate this
delay if necessary. While a call to grio_modify is being processed, I/O
to the stream continues uninterrupted at its existing rate.
DIAGNOSTICS
On success, 0 is returned indicating that the stream's properties have
been updated. If the new rate cannot be delivered a -1 is returned and
errno is set to indicate the error. The following error codes are
defined:
EINVAL The requested bandwidth was invalid.
EIO The library could not communicate with ggd2.
ENOENT The specified stream does not exist.
ENOSPC The requested bandwidth could not be reserved. Upon return the
bytes and msecs parameters describe the maximum bandwidth left
for reservation.
EPERM The process does not have root permissions or CAP_DEVICE_MGMT
privilege.
Page 1
grio_modify(3X)grio_modify(3X)FILES
/etc/griotab
SEE ALSOgrio2(5), grio_avail(3X), grio_bind(3X), grio_get_stream(3X),
grio_release(3X), grio_reserve(3X), grio_unbind(3X)
Page 2