posix_fallocate

NAME

posix_fallocate - allocate file space

SYNOPSIS

 #define _XOPEN_SOURCE 600
 #include <stdlib.h>
 
 int posix_fallocate(int fd, off_t offset, off_t len);
 

DESCRIPTION

The function posix_fallocate() ensures that disk space is allocated for the file referred to by the descriptor fd for the bytes in the range starting at offset and continuing for len bytes. After a successful call to posix_fallocate(), subsequent writes to bytes in the specified range are guaranteed not to fail because of lack of disk space.

If the size of the file is less than offset+len, then the file is increased to this size; otherwise the file size is left unchanged.

RETURN VALUE

posix_fallocate() returns zero on success, or an error number on failure. Note that errno is not set.

ERRORS

EBADF
fd is not a valid file descriptor, or is not opened for writing.
EFBIG
offset+len exceeds the maximum file size.
EINVAL
offset or len was less than 0.
ENODEV
fd does not refer to a regular file.
ENOSPC
There is not enough space left on the device containing the file referred to by fd.
ESPIPE
fd refers to a pipe of file descriptor.

VERSIONS

posix_fallocate() is available since glibc 2.1.94.

CONFORMING TO

POSIX.1-2001.

SEE ALSO

lseek(2), posix_fadvise(2), feature_test_macros(7)