sys_io_submit  [fs/aio.c]


Submits asynchronous I/O blocks for processing.

Arguments

eax 248
ebx The AIO context ID.
ecx Number of AIO request block within the array pointed by edx.
edx Pointer to an array of pointers to an iocb structures:
struc iocb
{
aio_data       rq 1
aio_key        rd 1
aio_reserved1  rd 1
aio_lio_opcode rw 1
aio_reqprio    rw 1
aio_fildes     rd 1
aio_buf        rq 1
aio_nbytes     rq 1
aio_offset     rq 1
aio_reserved2  rq 1
aio_reserved3  rq 1
}

Return values

If the system call succeeds the return value is 0 (it also returned when ecx is 0).
If the system call fails the return value is one of the following errno values:

-EAGAIN Insufficient resources are available to queue any iocbs.
-EINVAL The aio_context specified by ebx is invalid. ecx is less than 0. The first iocb entry in the AIO request block list is not properly initialized, or the operation specified is invalid for the file descriptor in the iocb.
-EFAULT One of the structures points to invalid data.
-EBADF The file descriptor specified in the first iocb is invalid.

Remarks

n/a

Compatibility

n/a