Required storage for the range
offset
to
offset,
+
len
in the file referenced by
fd
is guaranteed to be allocated upon successful return.
That is, if
posix_fallocate()
returns successfully, subsequent writes to the specified file data
will not fail due to lack of free space on the file system storage
media.
Any existing file data in the specified range is unmodified.
If
offset,
+
len
is beyond the current file size, then
posix_fallocate()
will adjust the file size to
offset,
+
len.
Otherwise, the file size will not be changed.
Space allocated by
posix_fallocate()
will be freed by a successful call to
creat(2)
or
open(2)
that truncates the size of the file.
Space allocated via
posix_fallocate()
may be freed by a successful call to
ftruncate(2)
that reduces the file size to a size smaller than
offset, +
len.