POSIX_FALLOCATE(3C) | Standard C Library Functions | POSIX_FALLOCATE(3C) |
posix_fallocate - file space control
#include <fcntl.h> int posix_fallocate(int fd, off_t offset, off_t len);
The posix_fallocate() function ensures that any required storage for regular file data starting at offset and continuing for len bytes is allocated on the file system storage media. If posix_fallocate() returns successfully, subsequent writes to the specified file data will not fail due to the lack of free space on the file system storage media.
If the offset+len is beyond the current file size, then posix_fallocate() adjusts the file size to offset+len. Otherwise, the file size is not changed.
Space allocated with posix_fallocate() is freed by a successful call to creat(2) or open(2) that truncates the size of the file. Space allocated with posix_fallocate() may be freed by a successful call to ftruncate(3C) that reduces the file size to a size smaller than offset+len.
Upon successful completion, posix_fallocate() returns zero. Otherwise, an error number is returned to indicate the error.
The posix_fallocate() function will fail if:
EBADF
EFBIG
EINTR
EINVAL
EIO
ENODEV
ENOSPC
ESPIPE
The posix_fallocate() function has a transitional interface for 64-bit file offsets. See lf64(7).
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Committed |
MT-Level | MT-Safe |
Standard | See standards(7). |
creat(2), open(2), unlink(2), ftruncate(3C), attributes(7), standards(7)
July 14, 2008 | OmniOS |