aio_*(2): mention ENOSYS under ERRORS

ENOSYS can occur if aio(4) is not loaded in the kernel. Document this
behavior so consumers on FreeBSD can better understand that this is a
possible scenario.

Clean up the manpages slightly while here:
- Sort `ERRORS` by errno(3).
- Use `.Fx` instead of `FreeBSD`.

MFC after:	2 weeks
Reviewed by:	ziaee
PR:		190942
Differential Revision: https://reviews.freebsd.org/D49502
This commit is contained in:
Enji Cooper 2025-03-25 14:57:52 -07:00
parent 0a85254d5a
commit d97e44784b
9 changed files with 71 additions and 4 deletions

View file

@ -80,6 +80,13 @@ The
.Fa fildes
argument
is an invalid file descriptor.
.It Bq Er ENOSYS
The
.Fn aio_cancel
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.El
.Sh SEE ALSO
.Xr aio_error 2 ,

View file

@ -72,6 +72,13 @@ The
.Fa iocb
argument
does not reference an outstanding asynchronous I/O request.
.It Bq Er ENOSYS
The
.Fn aio_error
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.El
.Sh SEE ALSO
.Xr aio_cancel 2 ,

View file

@ -136,6 +136,13 @@ argument
is not a valid descriptor.
.It Bq Er EINVAL
This implementation does not support synchronized I/O for this file.
.It Bq Er ENOSYS
The
.Fn aio_fsync
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.El
.Pp
If the request is successfully enqueued, but subsequently cancelled

View file

@ -98,6 +98,13 @@ The request was not queued because of system resource limitations.
The asynchronous notification method in
.Fa iocb->aio_sigevent.sigev_notify
is invalid or not supported.
.It Bq Er ENOSYS
The
.Fn aio_mlock
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.El
.Pp
If the request is successfully enqueued, but subsequently cancelled

View file

@ -173,6 +173,13 @@ points outside the process's allocated address space.
The asynchronous notification method in
.Fa iocb->aio_sigevent.sigev_notify
is invalid or not supported.
.It Bq Er ENOSYS
The
.Fn aio_read
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.It Bq Er EOPNOTSUPP
Asynchronous read operations on the file descriptor
.Fa iocb->aio_fildes
@ -263,7 +270,9 @@ The
.Fn aio_read2
and
.Fn aio_readv
system calls are FreeBSD extensions,
system calls are
.Fx
extensions,
and should not be used in portable code.
.Sh HISTORY
The

View file

@ -79,6 +79,13 @@ The I/O operation was submitted with
and the value of the
.Fa aio_lio_opcode
is invalid.
.It Bq Er ENOSYS
The
.Fn aio_return
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.El
.Sh SEE ALSO
.Xr aio_cancel 2 ,

View file

@ -89,6 +89,13 @@ contains more asynchronous I/O requests than the
variable, or at least one of the requests is not valid.
.It Bq Er EINTR
the suspend was interrupted by a signal.
.It Bq Er ENOSYS
The
.Fn aio_suspend
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.El
.Sh SEE ALSO
.Xr aio_cancel 2 ,

View file

@ -91,8 +91,6 @@ The
.Fn aio_waitcomplete
system call fails if:
.Bl -tag -width Er
.It Bq Er EINVAL
The specified time limit is invalid.
.It Bq Er EAGAIN
The process has not yet called
.Fn aio_read
@ -101,6 +99,15 @@ or
.It Bq Er EINTR
A signal was delivered before the timeout expired and before any
asynchronous I/O requests completed.
.It Bq Er EINVAL
The specified time limit is invalid.
.It Bq Er ENOSYS
The
.Fn aio_waitcomplete
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.It Bq Er EWOULDBLOCK
.It Bq Er EINPROGRESS
The specified time limit expired before any asynchronous I/O requests

View file

@ -182,6 +182,13 @@ points outside the process's allocated address space.
The asynchronous notification method in
.Fa iocb->aio_sigevent.sigev_notify
is invalid or not supported.
.It Bq Er ENOSYS
The
.Fn aio_write
system call is not supported.
This can occur if
.Xr aio 4
support is not present.
.It Bq Er EOPNOTSUPP
Asynchronous write operations on the file descriptor
.Fa iocb->aio_fildes
@ -265,7 +272,9 @@ The
.Fn aio_write2
and
.Fn aio_writev
system calls are FreeBSD extensions,
system calls are
.Fx
extensions,
and should not be used in portable code.
.Sh HISTORY
The