grio_action_list man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



grio_action_list(3X)					  grio_action_list(3X)

NAME
     grio_action_list - atomically execute a list of bandwidth
     reserve/unreserve actions

SYNOPSIS
     #include <sys/grio.h>
     int grio_action_list( int num, grio_resv_t *grior_list);

DESCRIPTION
     grio_action_list tries to atomically execute a list of bandwidth
     reserve/unreserve actions as specified in grior_list. num is the total
     number of actions in the list. The actions are considered to be atomic in
     the sense that all the actions in the list are executed together.	No
     other action can interfere with the actions in the list once the first
     action in the list has been initiated.

     The contents of the list of structures pointed to by grior_list includes
     the following members:

     gr_action
	  The type of action. Currently supported types are:

	  GRIO_RESV_ACTION    This is a reservation request.

	  GRIO_UNRESV_ACTION  This is an unreserve action.

     gr_start
	  Start time of the guarantee in seconds since January 1, 1970.

     gr_duration
	  Duration of the guarantee in seconds.

     gr_optime
	  The length of the rate guarantee time quantum in microseconds.

     gr_opsize
	  The amount of data guaranteed to be read/written within the time
	  quantum.

     gr_stream_id
	  This is the stream identifier returned by the routine when a rate
	  guarantee has been established.

     gr_flags
	  The flags in this field determine the characteristics of the rate
	  guarantee.  The following flags are defined:

	  PROC_PRIVATE_GUAR   Only the calling process can use the rate
			      guarantee. If cannot be transferred to other
			      processes.

									Page 1

grio_action_list(3X)					  grio_action_list(3X)

	  PROC_SHARE_GUAR     The rate guarantee can be transferred to other
			      processes.

	  FIXED_ROTOR_GUAR    Obtain a "rotor" type of guarantee and do not
			      allow the rotoration slot to change once it has
			      been established. (this is also known as a VOD
			      reservation)

	  SLIP_ROTOR_GUAR     This is the same type of rate guarantee as
			      FIXED_ROTOR_GUAR except that the system will
			      allow the process's rotation slot to change if
			      necessary.

	  NON_ROTOR_GUAR      Obtain an ordinary type of rate guarantee (non-
			      rotor).

	  REALTIME_SCHED_GUAR Use realtime scheduling to satisfy the rate
			      guarantee. The process will be suspended if it
			      tries to perform I/O at a rate greater than its
			      guarantee.

	  NON_SCHED_GUAR      Do not enforce the I/O rate scheduling. It is
			      assumed that the calling process will regulate
			      the rate at which I/O requests are issued.

	  PER_FILE_GUAR	      This is a per file guarantee. The gr_fd field of
			      the gr_object_u union is interpreted.

	  PER_FILE_SYS_GUAR   This is a file system guarantee. This is
			      meaningful only for the XFS file system.

     gr_fsid
	  The dev_t for the file system being reserved. Applies only for file
	  system reservations.

     gr_fid
	  The file descriptor which is being reserved.

DIAGNOSTICS
     On success, a zero is returned which indicates that all the sub-commands
     completed without errors.

     On failure a -1 is returned. Failure could be because of various reasons:
     If errno is set to EINVAL, this indicates that one of the parameters
     passed in to grio_action_list is invalid.	If errno indicates no error,
     but grio_action_list returns -1, this means that execution of one of the
     sub-commands failed.  The gr_error field of the relevant grio_resv_t
     structures is set to indicate the error.  The following error codes are
     defined:

									Page 2

grio_action_list(3X)					  grio_action_list(3X)

     [EIO]     The calling process could not communicate with the ggd daemon.

     [EBADF]   The specified file does not exist or already has a rate
	       guarantee from this process.

     [EIO]     The specified start time is invalid, or there is an invalid set
	       of flags specified in the gr_flags field.

     [ENOSPC]  The requested bandwidth could not be guaranteed. Upon return
	       the gr_opsize and gr_optime fields describe the maximum
	       bandwidth left for reservation. The gr_errordev field contains
	       the name of the device where the bandwidth was not available.

     [ENOENT]  The specified file does not contain any extents. It is empty.

     [EPERM]   The process does not have root permissions or CAP_DEVICE_MGMT
	       privilege.

     [EACCESS] All the disks in the xlv comprising the file system do not have
	       the same iosize, or the iosize of one or more disks was
	       invalid.

FILES
     /etc/grio_disks

NOTE
     The guaranteed rate I/O capabilities described in this man page refer to
     the version one GRIO implementation. Refer to grio2(5) for information
     covering the newer GRIO Version 2 implementation which supports both
     local and clustered XVM volumes.

SEE ALSO
     ggd(1M), grio_associate_file(3X), grio_query_fs(3X),
     grio_remove_request(3X), grio_reserve_fs(3X), grio_unreserve_bw(3X),
     grio_disk(4), grio(5)

									Page 3

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net