Open Celelibi opened 2 years ago
Which OS do you have in mind? On GNU/Linux, posix_fallocate
is implemented using fallocate
(see posix_fallocate.c), so that wouldn't increase compatiblity.
In the glibc posix_fallocate
is implemented using the fallocate
syscall first. But falls back onto an emulated implentation if the syscall fail with EOPNOTSUPP
. This implementation should work on almost every file system.
Not every FS support the
fallocate
system call. Falling back toposix_fallocate
would allow more compatibility at the expense of some performance penalty. But I think it's worth it. Maybe with a one-time warning?