posix_fallocate(2) && posix_fadvise(2) are somewhat broken

Maxim Sobolev sobomax at FreeBSD.org
Tue Dec 8 17:59:52 UTC 2015


Ah, ok, I see now. It's been broken and still broken in 9.x/10.x, already
fixed in trunk and I been just reading wrong manpage. Thanks for the
pointer, on a related note those fixes should probably be MFCed into 10.3
if it has not been already.

On Tue, Dec 8, 2015 at 9:42 AM, Konstantin Belousov <kostikbel at gmail.com>
wrote:

> On Tue, Dec 08, 2015 at 04:52:05PM +0100, Dag-Erling Sm??rgrav wrote:
> > Maxim Sobolev <sobomax at FreeBSD.org> writes:
> > > Hi, while working on some unrelated feature I've noticed that at least
> > > those two system calls are not returning proper value (-1) on error.
> > > Instead actual errno value is returned from the syscall verbatim,
> > > i.e. posix_fadvise() returns 22 on EINVAL.
> >
> > That's how syscalls work.
>
> No, this is not how typical syscalls work, but is how the posix_fallocate()
> and posix_fadvise() are specified by Posix.  The patch is wrong, see also
> r261080 and r288640.
>
>


More information about the freebsd-current mailing list