2 @section @code{posix_fallocate}
3 @findex posix_fallocate
5 POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/posix_fallocate.html}
9 Portability problems fixed by Gnulib:
13 Portability problems not fixed by Gnulib:
16 This function is missing on some platforms:
17 Mac OS X 10.13, FreeBSD 6.0, NetBSD 5.0, OpenBSD 6.7, Minix 3.1.8, AIX 5.1, HP-UX 11, IRIX 6.5, Solaris 10, Cygwin 1.5.x, mingw, MSVC 14, Android 4.4.
19 POSIX specifies that EINVAL should be returned when the file system doesn't
20 support the allocation operation directly. glibc however emulates the file system
21 allocation with writes where unsupported, and apps have depended on
22 that long term implementation. This is both inefficient, and as of
23 glibc 2.21 at least, buggy on certain NFS setups.
25 On platforms where @code{off_t} is a 32-bit type, this function may not
26 work correctly across the entire data range of files larger than 2 GB.
27 The fix is to use the @code{AC_SYS_LARGEFILE} macro.