.\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl)
.\"
+.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
-.\" License along with this manual; if not, write to the Free
-.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
-.\" USA.
+.\" License along with this manual; if not, see
+.\" <http://www.gnu.org/licenses/>.
+.\" %%%LICENSE_END
.\"
-.TH AIO_CANCEL 3 2010-10-03 "" "Linux Programmer's Manual"
+.TH AIO_CANCEL 3 2012-05-08 "" "Linux Programmer's Manual"
.SH NAME
aio_cancel \- cancel an outstanding asynchronous I/O request
.SH SYNOPSIS
.I aiocb
structure.)
.LP
-Normal asynchronous notification occurs for canceled requests.
-The request return status is set to \-1, and the request error status
+Normal asynchronous notification occurs for canceled requests (see
+.BR aio (7)
+and
+.BR sigevent (7)).
+The request return status
+.RB ( aio_return (3))
+is set to \-1, and the request error status
+.RB ( aio_error (3))
is set to
.BR ECANCELED .
The control block of requests that cannot be canceled is not changed.
.LP
+If the request could not be canceled,
+then it will terminate in the usual way after performing the I/O operation.
+(In this case,
+.BR aio_error (3)
+will return the status
+.BR EINPROGRESSS .)
+.LP
If
.I aiocbp
is not NULL, and
.LP
Which operations are cancelable is implementation-defined.
.\" FreeBSD: not those on raw disk devices.
-.SH "RETURN VALUE"
-This function returns
+.SH RETURN VALUE
+The
+.BR aio_cancel ()
+function returns one of the following values:
+.TP
.B AIO_CANCELED
-if all requests were successfully
-canceled.
-It returns
+All requests were successfully canceled.
+.TP
.B AIO_NOTCANCELED
-when at least one of the
+At least one of the
requests specified was not canceled because it was in progress.
-In this case one may check the status of individual requests using
+In this case, one may check the status of individual requests using
.BR aio_error (3).
-This function returns
+.TP
.B AIO_ALLDONE
-if all requests had
-already been completed before this call.
-When some error occurs, \-1 is returned, and
-.I errno
-is set appropriately.
+All requests had already been completed before the call.
+.TP
+\-1
+An error occurred.
+The cause of the error can be found by inspecting
+.IR errno .
.SH ERRORS
.TP
.B EBADF
.I fd
is not a valid file descriptor.
+.TP
+.B ENOSYS
+.BR aio_cancel ()
+is not implemented.
.SH VERSIONS
The
.BR aio_cancel ()
function is available since glibc 2.1.
-.SH "CONFORMING TO"
+.SH CONFORMING TO
POSIX.1-2001, POSIX.1-2008.
.SH EXAMPLE
See
.BR aio (7).
-.SH "SEE ALSO"
+.SH SEE ALSO
.BR aio_error (3),
.BR aio_fsync (3),
.BR aio_read (3),
.BR aio_write (3),
.BR lio_listio (3),
.BR aio (7)
+.SH COLOPHON
+This page is part of release 3.79 of the Linux
+.I man-pages
+project.
+A description of the project,
+information about reporting bugs,
+and the latest version of this page,
+can be found at
+\%http://www.kernel.org/doc/man\-pages/.