Provided by: manpages-dev_2.17-1_all
io_setup - Create an asynchronous I/O context
long io_setup (unsigned nr_events, aio_context_t *ctxp);
io_setup() creates an asynchronous I/O context capable of receiving at
least nr_events. 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
io_setup() returns 0 on success; otherwise, one of the errors listed in
the "Errors" section is returned.
EINVAL ctxp is not initialized, or the specified nr_events exceeds
internal limits. nr_events should be greater than 0.
EFAULT An invalid pointer is passed for ctxp.
ENOMEM Insufficient kernel resources are available.
EAGAIN The specified nr_events exceeds the user’s limit of available
ENOSYS io_setup() is not implemented on this architecture.
io_setup() is Linux specific and should not be used in programs that
are intended to be portable.
The asynchronous I/O system calls first appeared in Linux 2.5, August
io_destroy(2), io_getevents(2), io_submit(2), io_cancel(2).
The asynchronous I/O system calls were written by Benjamin LaHaise.