2.4.43 FileSfioReserveInformation
This information class is used locally to query or set reserved bandwidth for a file handle. Conceptually reserving bandwidth is effectively specifying the bytes per second to allocate to file IO.
A FILE_SFIO_RESERVE_INFORMATION data element, defined as follows, is returned to the caller.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
RequestsPerPeriod |
|||||||||||||||||||||||||||||||
Period |
|||||||||||||||||||||||||||||||
RetryFailures |
Discardable |
Reserved |
|||||||||||||||||||||||||||||
RequestSize |
|||||||||||||||||||||||||||||||
NumOutstandingRequests |
RequestsPerPeriod (4 bytes): A 32-bit unsigned integer indicating the number of I/O requests that complete per period of time, as specified in the Period field. When setting bandwidth reservation, a value of 0 indicates to the file system that it MUST free any existing reserved bandwidth.
Period (4 bytes): A 32-bit unsigned integer that contains the period for reservation, which is the time from which I/O is issued to the kernel until the time the I/O is completed, specified in milliseconds.
RetryFailures (1 byte): A Boolean (section 2.1.8) value.
Discardable (1 byte): A Boolean (section 2.1.8) value.
Reserved (2 bytes): Reserved for alignment. This field can contain any value and MUST be ignored.
RequestSize (4 bytes): A 32-bit unsigned integer that indicates the minimum size of any individual I/O request that can be issued by an application using bandwidth reservation. When setting reservations, this field MUST be ignored by servers and SHOULD be set to 0 by clients.
NumOutstandingRequests (4 bytes): A 32-bit unsigned integer that indicates the number of RequestSize I/O requests allowed to be outstanding at any time. When setting reservations, this field MUST be ignored by servers and SHOULD be set to 0 by clients.
This operation returns a status code as specified in section 2.2. Upon success, the status code returned by the function that processes this file information class is STATUS_SUCCESS. The most common error codes are listed in the following table.
Error code |
Meaning |
---|---|
STATUS_NOT_SUPPORTED 0xC00000BB |
The request is not supported. |
STATUS_INFO_LENGTH_MISMATCH 0xC0000004 |
The specified information record length does not match the length that is required for the specified information class. |