.TH io_queue_init 2 2009-06-10 "Linux 2.4" "Linux AIO" .SH NAME io_queue_init \- Initialize asynchronous io state machine .SH SYNOPSIS .nf .B #include .br .sp .B #include .br .sp .BI "int io_queue_init(int " maxevents ", io_context_t *" ctx ");" .sp .fi .SH DESCRIPTION .B io_queue_init Attempts to create an aio context capable of receiving at least .IR maxevents events. .IR ctx must point to an aio context that already exists and must be initialized to .IR 0 before the call. If the operation is successful, *cxtp is filled with the resulting handle. .SH "RETURN VALUES" On success, .B io_queue_init returns \fI0\fP. Otherwise, -error is return, where error is one of the Exxx values defined in the Errors section. .SH ERRORS .TP .B EFAULT .I iocbs referenced data outside of the program's accessible address space. .TP .B EINVAL .I maxevents is <= \fI0\fP or .IR ctx is an invalid memory location. .TP .B ENOSYS Not implemented. .TP .B EAGAIN .IR "maxevents > max_aio_reqs" where max_aio_reqs is a tunable value. .SH "SEE ALSO" .BR io (3), .BR io_cancel (3), .BR io_fsync (3), .BR io_getevents (3), .BR io_prep_fsync (3), .BR io_prep_pread (3), .BR io_prep_pwrite (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).