IO_SETUP(2) Linux Programmer's Manual IO_SETUP(2)NAMEio_setup - Create an asynchronous I/O context
SYNOPSIS
#include <libaio.h>
int io_setup (int maxevents, io_context_t *ctxp);
DESCRIPTIONio_setup() creates an asynchronous I/O context capable of receiving at
least maxevents. ctxp must not point to an AIO context that already
exists, and must be initialized to 0 prior to the call. On successful
creation of the AIO context, *ctxp is filled in with the resulting han‐
dle.
RETURN VALUEio_setup() returns 0 on success; otherwise, one of the errors listed in
the "Errors" section is returned.
ERRORS
EINVAL ctxp is not initialized, or the specified maxevents exceeds in‐
ternal limits. maxevents should be greater than 0.
EFAULT An invalid pointer is passed for ctxp.
ENOMEM Insufficient kernel resources are available.
EAGAIN The specified maxevents exceeds the user's limit of available
events.
ENOSYS io_setup() is not implemented on this architecture.
CONFORMING TOio_setup() is Linux specific and should not be used in programs that
are intended to be portable.
VERSIONS
The asynchronous I/O system calls first appeared in Linux 2.5, August
2002.
SEE ALSOio_destroy(2), io_getevents(2), io_submit(2), io_cancel(2).
NOTES
The asynchronous I/O system calls were written by Benjamin LaHaise.
AUTHOR
Kent Yoder.
Linux 2.4 2003-02-21 IO_SETUP(2)