HP-UX Reference (11i v2 07/12) - 7 Device (Special) Files, 9 General Information, Index (vol 10)
v
vxfsio(7) vxfsio(7)
If an I/O request fails to meet alignment criteria, the I/O request is performed as a data
synchronous I/O operation.
VX_DSYNC
Indicates that data synchronous I/O mode is desired. In data synchronous I/O mode, a
write operation returns to the caller after the data has been transferred to external media,
but the inode is not updated synchronously if only the times in the inode need to be
updated.
VX_NOREUSE
Indicates that buffered data does not need to be retained in anticipation of further use by
the application.
VX_RANDOM
Indicates that the file is being accessed randomly. Read-ahead should not be performed.
VX_SEQ
Indicates that the file is being accessed sequentially. Maximum read-ahead should be per-
formed.
VX_UNBUFFERED
Indicates that data associated with read and write operations is to be transferred directly to
or from the user supplied buffer, without being cached. The alignment constraints are
identical to those associated with the VX_DIRECT caching advisory.
If the file is extended or space is allocated to the file and the VX_UNBUFFERED
advisory is
set, the inode is not written synchronously to disk before the write returns.
The
VX_RANDOM and VX_SEQ caching advisories are mutually exclusive. Similarly, only one of the
VX_DIRECT, VX_DSYNC,orVX_UNBUFFERED
caching advisories may be set.
The
VX_RANDOM, VX_SEQ, and VX_NOREUSE caching advisories are maintained on a per-file basis.
Changes made to these advisories by a process affect I/O operations by all processes currently access-
ing the file.
The VX_DIRECT, VX_DSYNC, and VX_UNBUFFERED
caching advisories are maintained on a per-
open instance of a file, so changes made to these advisories by a process do not affect the setting of
these advisories, and therefore I/O operations, by another process.
The
VX_SETCACHE ioctl returns a zero if the caching advisories are successfully set. If the operation
fails, the return value is -1 and the external variable errno is a general DIAGNOSTIC.
VX_SETEXT
Set extent information.
Note: VX_SETEXT is available with the HP OnLineJFS product only.
The extent information is set according to the parameters specified by arg. The argument
arg
points to a structure of type vx_ext defined in sys/fs/vx_ioctl.h
. This structure contains
the following members:
ext_size
reserve
a_flags
The ext_size element requests a fixed extent size, in blocks, for the file. If a fixed extent size is
not required, use zero to allow the default allocation policy to be used. Changes to the fixed extent
size made after the file contains indirect blocks have no effect unless all current indirect blocks are
freed via file truncation and/or reservation deallocation.
The reserve element sets the amount of space preallocated to the file (in blocks). If the reserve
amount is greater than the current reservation, the allocation for the file is increased to match the
reserve amount. If the reserve amount is less than the current reservation, the allocation is
decreased. The allocation is not reduced to less than the current file size.
File reservation cannot be increased beyond the ulimit (see ulimit(2)) of the requesting process. How-
ever, an existing reservation is not trimmed to the requesting process’s ulimit. Reservation of space
for existing sparse files does not cause blocks to be allocated to fill in the holes, but only allocates
blocks after the end of the file. Thus, it is possible to have a larger reservation for a file than blocks in
the file.
HP-UX 11i Version 2: December 2007 Update − 4 − Hewlett-Packard Company 231