man-pages/man2/io_cancel.2

83 lines
2.1 KiB
Groff

.\" Copyright (C) 2003 Free Software Foundation, Inc.
.\" This file is distributed according to the GNU General Public License.
.\" See the file COPYING in the top level source directory for details.
.\"
.\" .de Sh \" Subsection
.\" .br
.\" .if t .Sp
.\" .ne 5
.\" .PP
.\" \fB\\$1\fR
.\" .PP
.\" ..
.\" .de Sp \" Vertical space (when we can't use .PP)
.\" .if t .sp .5v
.\" .if n .sp
.\" ..
.\" .de Ip \" List item
.\" .br
.\" .ie \\n(.$>=3 .ne \\$3
.\" .el .ne 3
.\" .IP "\\$1" \\$2
.\" ..
.TH "IO_CANCEL" 2 "2003-02-21" "Linux 2.4" "Linux Programmer's Manual"
.SH NAME
io_cancel \- cancel an outstanding asynchronous I/O operation
.SH "SYNOPSIS"
.nf
.\" .ad l
.\" .hy 0
.\"
.B #include <libaio.h>
.\"#include <linux/aio.h>
.sp
.\" .HP 16
.BI "int io_cancel(aio_context_t " ctx_id ", struct iocb *" iocb ,
.BI " struct io_event *" result );
.\" .ad
.\" .hy
.fi
.SH "DESCRIPTION"
.PP
\fBio_cancel\fR() attempts to cancel an asynchronous I/O operation
previously submitted with the \fBio_submit\fR system call.
\fIctx_id\fR is the AIO context ID of the operation to be cancelled.
If the AIO context is found, the event will be cancelled and then copied
into the memory pointed to by \fIresult\fR without being placed
into the completion queue.
.SH "RETURN VALUE"
.PP
\fBio_cancel\fR() returns 0 on success;
on failure, it returns one of the errors listed under ERRORS.
.SH "ERRORS"
.TP
.B EINVAL
The AIO context specified by \fIctx_id\fR is invalid.
.TP
.B EFAULT
One of the data structures points to invalid data.
.TP
.B EAGAIN
The \fIiocb\fR specified was not cancelled.
.TP
.B ENOSYS
\fBio_cancel\fR() is not implemented on this architecture.
.SH "VERSIONS"
.PP
The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
.SH "CONFORMING TO"
.PP
\fBio_cancel\fR() is Linux specific and should not be used
in programs that are intended to be portable.
.SH "SEE ALSO"
.PP
\fBio_setup\fR(2), \fBio_destroy\fR(2), \fBio_getevents\fR(2),
\fBio_submit\fR(2).
.\" .SH "NOTES"
.\"
.\" .PP
.\" The asynchronous I/O system calls were written by Benjamin LaHaise.
.\"
.\" .SH AUTHOR
.\" Kent Yoder.