As can be seen in https://git.musl-libc.org/cgit/musl/tree/src/fcntl/posix_fallocate.c?id=73cc775bee53300c7cf759f37580220b18ac13d3 musl libc returns the syscall's errors directly, which means it doesn't perform the same emulation as glibc, and can return EOPNOTSUPP to an application, which isnt't listed in ERRORS. --- This patch replaces "[patch] posix_fallocate.3: add note about error codes for musl." from https://lore.kernel.org/linux-man/CAFDeuWPmWWHatxnZ9HsYN2fp3gagHOKCsKmVDj0F6us9XWKwFQ@xxxxxxxxxxxxxx/T/#t posix_fallocate(3p) doesn't list EOPNOTSUPP as an error that can be returned to applications. Should it be noted in the man page that this is something added/required by Linux? (I might be mistaken regarding this assumption). man3/posix_fallocate.3 | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/man3/posix_fallocate.3 b/man3/posix_fallocate.3 index 58338d673..125bcc12b 100644 --- a/man3/posix_fallocate.3 +++ b/man3/posix_fallocate.3 @@ -98,6 +98,13 @@ There is not enough space left on the device containing the file referred to by .IR fd . .TP +.B EOPNOTSUPP +The filesystem containing the file referred to by +.IR fd +does not support this operation. +This error code can be returned by libc's that don't perform the +emulation shown in NOTES, such as musl libc. +.TP .B ESPIPE .I fd refers to a pipe. -- 2.28.0