Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Oct 2002 17:07:37 -0400
From:      Craig Rodrigues <rodrigc@attbi.com>
To:        cvs-committers@FreeBSD.org
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/lib/libc/sys aio_cancel.2 aio_error.2 aio_read.2 aio_return.2 aio_suspend.2 aio_waitcomplete.2 aio_write.2
Message-ID:  <20021024170737.A34595@attbi.com>
In-Reply-To: <20021022164649.GS91539@elvis.mu.org>; from alfred@FreeBSD.org on Tue, Oct 22, 2002 at 09:46:49AM -0700
References:  <200210221612.g9MGCR1p012070@repoman.freebsd.org> <20021022161820.GA57732@starjuice.net> <20021022164649.GS91539@elvis.mu.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--2fHTh5uZTiUOsy+g
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Thu, Oct 24, 2002 at 10:55:55PM +0200, Philippe Charnier wrote:
> Salut,
>
> Please add the following patch

OK, I incorporated some minor fixes to aio.4 from Philippe.
Here's what I've got.
-- 
Craig Rodrigues        
http://www.gis.net/~craigr    
rodrigc@attbi.com

--2fHTh5uZTiUOsy+g
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="aio.4"

.\"
.\" $FreeBSD$
.\"
.Dd October 23, 2002
.Dt AIO 4
.Os
.Sh NAME
.Nm aio
.Nd asynchronous I/O
.Sh SYNOPSIS
.Cd "options VFS_AIO"
.Sh DESCRIPTION
The
.Nm
kernel module provides system calls for asynchronous I/O.
.Sh KERNEL OPTIONS
The following kernel configuration option
(see
.Xr config 8 )
is required:
.Pp
.Dl "options VFS_AIO"
.Pp
If you do not want AIO support included in the kernel, but
want to use it occasionally, do not add the
.Dv VFS_AIO
option.  Instead, load the
.Nm
module as desired:
.Pp
.Dl kldload aio
.Pp
.Sh APPLICATION USAGE
Asynchronous I/O is specified as an option in
.St -p1003.1-2001
and earlier standards.
A portable application must be prepared for the possibility that
asynchronous I/O may not be available,
and also that it may not be available at run-time for certain files or
types of file descriptors.
.Pp
The
.Dv _POSIX_ASYNCHRONOUS_IO
macro in
.Pa unistd.h
describes the compile-time support for
.Nm .
The following conditions are possible:
.Bl -inset -offset indent
.It Dv _POSIX_ASYNCHRONOUS_IO No is not defined .
The implementation provides no information about whether programs using
.Nm
can be compiled.
.It Dv _POSIX_ASYNCHRONOUS_IO No is defined to \-1 .
The implementation does not support the asynchronous I/O
feature; the
.Pa aio.h
header file and
.Fn aio_*
functions are not provided.
.It Dv _POSIX_ASYNCHRONOUS_IO No is defined to a positive integer .
The implementation supports the asynchronous I/O feature
unconditionally, for all files and all file descriptors.  The
.Pa aio.h
header file and
.Fn aio_*
functions are provided.
.It Dv _POSIX_ASYNCHRONOUS_IO No is defined to zero .
The implementation optionally supports asynchronous I/O.
The
.Pa aio.h
header file and
.Fn aio_*
functions are provided.
However, the result of calling any
.Fn aio_*
function is undefined unless the application has checked that the
asynchronous I/O option is supported on the files or file descriptors
it plans to use, by calling the
.Xr pathconf 2
or
.Xr fpathconf 2
function with a
.Fa name
argument of
.Dv _PC_ASYNC_IO .
If
.Nm
is available for the specified file (or descriptor),
.Xr pathconf 2
(or
.Xr fpathconf 2 )
will return a positive integer which is equal to the value specified
for
.Dv _POSIX_VERSION
by the version of the standard the system implements.
.El
.Pp
These configuration parameters can be queried by shell scripts using
the
.Xr getconf 1
program.
.Sh SEE ALSO
.Xr aio_cancel 2 ,
.Xr aio_error 2 ,
.Xr aio_read 2 ,
.Xr aio_return 2 ,
.Xr aio_suspend 2 ,
.Xr aio_waitcomplete 2 ,
.Xr aio_write 2 ,
.Xr kld 4 ,
.Xr config 8 ,
.Xr kldload 8
.Sh HISTORY
The
.Nm
facility appeared in
.Fx 3.0 .

--2fHTh5uZTiUOsy+g
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="aio2.diff"

--- lib/libc/sys/aio_cancel.2.orig	Wed Oct 23 11:06:25 2002
+++ lib/libc/sys/aio_cancel.2	Thu Oct 24 11:06:08 2002
@@ -104,6 +104,7 @@
 .Xr aio_return 2 ,
 .Xr aio_suspend 2 ,
 .Xr aio_write 2 ,
+.Xr aio 4,
 .Xr config 8 ,
 .Xr kldload 8 ,
 .Xr kldunload 8
--- lib/libc/sys/aio_error.2.orig	Wed Oct 23 11:06:25 2002
+++ lib/libc/sys/aio_error.2	Thu Oct 24 11:07:24 2002
@@ -96,6 +96,7 @@
 .Xr fsync 2 ,
 .Xr read 2 ,
 .Xr write 2
+.Xr aio 4,
 .Xr config 8 ,
 .Xr kldload 8 ,
 .Xr kldunload 8
--- lib/libc/sys/aio_read.2.orig	Wed Oct 23 11:06:25 2002
+++ lib/libc/sys/aio_read.2	Thu Oct 24 11:07:04 2002
@@ -203,6 +203,7 @@
 .Xr aio_suspend 2 ,
 .Xr aio_waitcomplete 2 ,
 .Xr aio_write 2 ,
+.Xr aio 4,
 .Xr config 8 ,
 .Xr kldload 8 ,
 .Xr kldunload 8
--- lib/libc/sys/aio_return.2.orig	Wed Oct 23 11:06:25 2002
+++ lib/libc/sys/aio_return.2	Thu Oct 24 11:06:50 2002
@@ -98,6 +98,7 @@
 .Xr fsync 2 ,
 .Xr read 2 ,
 .Xr write 2 ,
+.Xr aio 4,
 .Xr config 8 ,
 .Xr kldload 8 ,
 .Xr kldunload 8
--- lib/libc/sys/aio_suspend.2.orig	Wed Oct 23 11:06:25 2002
+++ lib/libc/sys/aio_suspend.2	Thu Oct 24 11:06:38 2002
@@ -108,6 +108,7 @@
 .Xr aio_return 2 ,
 .Xr aio_waitcomplete 2 ,
 .Xr aio_write 2 ,
+.Xr aio 4,
 .Xr config 8 ,
 .Xr kldload 8 ,
 .Xr kldunload 8
--- lib/libc/sys/aio_waitcomplete.2.orig	Wed Oct 23 11:06:25 2002
+++ lib/libc/sys/aio_waitcomplete.2	Thu Oct 24 11:06:27 2002
@@ -135,6 +135,7 @@
 .Xr fsync 2 ,
 .Xr read 2 ,
 .Xr write 2 ,
+.Xr aio 4,
 .Xr config 8 ,
 .Xr kldload 8 ,
 .Xr kldunload 8
--- lib/libc/sys/aio_write.2.orig	Wed Oct 23 11:06:25 2002
+++ lib/libc/sys/aio_write.2	Thu Oct 24 11:07:50 2002
@@ -196,6 +196,7 @@
 .Xr aio_return 2 ,
 .Xr aio_suspend 2 ,
 .Xr aio_waitcomplete 2 ,
+.Xr aio 4 ,
 .Xr config 8 ,
 .Xr kldload 8 ,
 .Xr kldunload 8

--2fHTh5uZTiUOsy+g--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021024170737.A34595>