blob: 8e9ddc866a8d4011547ce5f6380dcca230a6be7e [file] [log] [blame]
./"/* io_getevents:
./" * Attempts to read at least min_nr events and up to nr events from
./" * the completion queue for the aio_context specified by ctx_id. May
./" * fail with -EINVAL if ctx_id is invalid, if min_nr is out of range,
./" * if nr is out of range, if when is out of range. May fail with
./" * -EFAULT if any of the memory specified to is invalid. May return
./" * 0 or < min_nr if no events are available and the timeout specified
./" * by when has elapsed, where when == NULL specifies an infinite
./" * timeout. Note that the timeout pointed to by when is relative and
./" * will be updated if not NULL and the operation blocks. Will fail
./" * with -ENOSYS if not implemented.
./" */
./"asmlinkage long sys_io_getevents(io_context_t ctx_id,
./" long min_nr,
./" long nr,
./" struct io_event *events,
./" struct timespec *timeout)
./"
.TH io_getevents 2 2002-09-03 "Linux 2.4" "Linux AIO"
.SH NAME
io_getevents \- Read resulting events from io requests
.SH SYNOPSIS
.nf
.B #include <errno.h>
.sp
.br
.B #include <libaio.h>
.br
.sp
struct iocb {
void *data;
unsigned key;
short aio_lio_opcode;
short aio_reqprio;
int aio_fildes;
};
.sp
struct io_event {
unsigned PADDED(data, __pad1);
unsigned PADDED(obj, __pad2);
unsigned PADDED(res, __pad3);
unsigned PADDED(res2, __pad4);
};
.sp
.BI "int io_getevents(io_context_t " ctx ", long " nr ", struct io_event *" events "[], struct timespec *" timeout ");"
.fi
.SH DESCRIPTION
Attempts to read up to nr events from
the completion queue for the aio_context specified by ctx.
.SH "RETURN VALUES"
May return
0 if no events are available and the timeout specified
by when has elapsed, where when == NULL specifies an infinite
timeout. Note that the timeout pointed to by when is relative and
will be updated if not NULL and the operation blocks. Will fail
with ENOSYS if not implemented.
.SH ERRORS
.TP
.B EINVAL
if ctx_id is invalid, if min_nr is out of range,
if nr is out of range, if when is out of range.
.TP
.B EFAULT
if any of the memory specified to is invalid.
.SH "SEE ALSO"
.BR io(3),
.BR io_cancel(3),
.BR io_fsync(3),
.BR io_prep_fsync(3),
.BR io_prep_pread(3),
.BR io_prep_pwrite(3),
.BR io_queue_init(3),
.BR io_queue_release(3),
.BR io_queue_run(3),
.BR io_queue_wait(3),
.BR io_set_callback(3),
.BR io_submit(3),
.BR errno(3)