git: d97e44784bb5 - main - aio_*(2): mention ENOSYS under ERRORS

From: Enji Cooper <ngie_at_FreeBSD.org>
Date: Wed, 26 Mar 2025 04:50:46 UTC
The branch main has been updated by ngie:

URL: https://cgit.FreeBSD.org/src/commit/?id=d97e44784bb5a510b7af7593c86cfbcff73855c4

commit d97e44784bb5a510b7af7593c86cfbcff73855c4
Author:     Enji Cooper <ngie@FreeBSD.org>
AuthorDate: 2025-03-25 21:57:52 +0000
Commit:     Enji Cooper <ngie@FreeBSD.org>
CommitDate: 2025-03-26 04:49:33 +0000

    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
---
 lib/libsys/aio_cancel.2       |  7 +++++++
 lib/libsys/aio_error.2        |  7 +++++++
 lib/libsys/aio_fsync.2        |  7 +++++++
 lib/libsys/aio_mlock.2        |  7 +++++++
 lib/libsys/aio_read.2         | 11 ++++++++++-
 lib/libsys/aio_return.2       |  7 +++++++
 lib/libsys/aio_suspend.2      |  7 +++++++
 lib/libsys/aio_waitcomplete.2 | 11 +++++++++--
 lib/libsys/aio_write.2        | 11 ++++++++++-
 9 files changed, 71 insertions(+), 4 deletions(-)

diff --git a/lib/libsys/aio_cancel.2 b/lib/libsys/aio_cancel.2
index 42d074054716..928a8b325e5f 100644
--- a/lib/libsys/aio_cancel.2
+++ b/lib/libsys/aio_cancel.2
@@ -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 ,
diff --git a/lib/libsys/aio_error.2 b/lib/libsys/aio_error.2
index 69eb7cd90ee2..2579d2f33052 100644
--- a/lib/libsys/aio_error.2
+++ b/lib/libsys/aio_error.2
@@ -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 ,
diff --git a/lib/libsys/aio_fsync.2 b/lib/libsys/aio_fsync.2
index 46fc5d95bcfd..0b863773eaf2 100644
--- a/lib/libsys/aio_fsync.2
+++ b/lib/libsys/aio_fsync.2
@@ -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
diff --git a/lib/libsys/aio_mlock.2 b/lib/libsys/aio_mlock.2
index 02d54304c631..f89ad10936aa 100644
--- a/lib/libsys/aio_mlock.2
+++ b/lib/libsys/aio_mlock.2
@@ -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
diff --git a/lib/libsys/aio_read.2 b/lib/libsys/aio_read.2
index 3a9601754c06..811d0b234168 100644
--- a/lib/libsys/aio_read.2
+++ b/lib/libsys/aio_read.2
@@ -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
diff --git a/lib/libsys/aio_return.2 b/lib/libsys/aio_return.2
index 499b85ef20d8..49e1abf201ec 100644
--- a/lib/libsys/aio_return.2
+++ b/lib/libsys/aio_return.2
@@ -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 ,
diff --git a/lib/libsys/aio_suspend.2 b/lib/libsys/aio_suspend.2
index c46b0292c34e..ebc3c15d059f 100644
--- a/lib/libsys/aio_suspend.2
+++ b/lib/libsys/aio_suspend.2
@@ -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 ,
diff --git a/lib/libsys/aio_waitcomplete.2 b/lib/libsys/aio_waitcomplete.2
index 1f20eca942ab..0a38155d7c75 100644
--- a/lib/libsys/aio_waitcomplete.2
+++ b/lib/libsys/aio_waitcomplete.2
@@ -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
diff --git a/lib/libsys/aio_write.2 b/lib/libsys/aio_write.2
index f59406b8ab36..a7108a87e378 100644
--- a/lib/libsys/aio_write.2
+++ b/lib/libsys/aio_write.2
@@ -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