VERITAS File System 4.1 Administrator's Guide

Application Interface
Extent Information
Chapter 4 83
Fixed Extent Sizes
VxFS uses the I/O size of write requests, and a default policy, when allocating space to a file.
For some applications, this may not work out well. These applications can set a fixed extent
size, so that all new extents allocated to the file are of the fixed extent size.
By using a fixed extent size, an application can reduce allocations and guarantee good extent
sizes for a file. An application can reserve most of the space a file needs, and then set a
relatively large fixed extent size. If the file grows beyond the reservation, any new extents are
allocated in the fixed extent size.
Another use of a fixed extent size occurs with sparse files. The file system usually does I/O in
page size multiples. When allocating to a sparse file, the file system allocates pages as the
smallest default unit. If the application always does sub-page I/O, it can request a fixed extent
size to match its I/O size and avoid wasting extra space.
When setting a fixed extent size, an application should not select too large a size. When all
extents of the required size have been used, attempts to allocate new extents fail: this failure
can happen even though there are blocks free in smaller extents.
Fixed extent sizes can be modified by the VX_ALIGN flag. If the VX_ALIGN flag is set, then any
future extents allocated to the file are aligned on a fixed extent size boundary relative to the
start of the allocation unit. This can be used to align extents to disk striping boundaries or
physical disk boundaries.
The VX_ALIGN flag is persistent and is returned by the VX_GETEXT ioctl.