from small one page howto to huge articles all in one place
 

search text in:





Poll
Which kernel version do you use?





poll results

Last additions:
using iotop to find disk usage hogs

using iotop to find disk usage hogs

words:

887

views:

195651

userrating:

average rating: 1.7 (102 votes) (1=very good 6=terrible)


May 25th. 2007:
Words

486

Views

252057

why adblockers are bad


Workaround and fixes for the current Core Dump Handling vulnerability affected kernels

Workaround and fixes for the current Core Dump Handling vulnerability affected kernels

words:

161

views:

140922

userrating:

average rating: 1.4 (42 votes) (1=very good 6=terrible)


April, 26th. 2006:

Druckversion
You are here: manpages





io_submit

Section: Linux AIO (2)
Updated: 2002-09-02
Index Return to Main Contents
 

NAME

io_submit - Submit io requests  

SYNOPSIS

#include <errno.h>

#include <libaio.h>
int io_submit(io_context_t ctx, long nr, struct iocb *iocbs[]); struct iocb { void *data; unsigned key; short aio_lio_opcode; short aio_reqprio; int aio_fildes; };
 

DESCRIPTION

io_submit submits nr iocbs for processing for a given io context ctx.

The io_submit function can be used to enqueue an arbitrary number of read and write requests at one time. The requests can all be meant for the same file, all for different files or every solution in between.

io_submit gets the nr requests from the array pointed to by iocbs aio_lio_opcode member in each element of iocbs field is IO_CMD_PREAD a read operation is enqueued, similar to a call of io_prep_pread for this element of the array (except that the way the termination is signalled is different, as we will see below). If the aio_lio_opcode member is IO_CMD_PWRITE a write operation is enqueued. Otherwise the aio_lio_opcode must be IO_CMD_NOP in which case this element of iocbs is simply ignored. This ``operation'' is useful in situations where one has a fixed array of struct iocb elements from which only a few need to be handled at a time. Another situation is where the io_submit call was canceled before all requests are processed and the remaining requests have to be reissued.

The other members of each element of the array pointed to by iocbs must have values suitable for the operation as described in the documentation for io_prep_pread and io_prep_pwrite above.

The function returns immediately after having enqueued all the requests. On success, io_submit returns the number of iocbs submitted successfully. Otherwise, -error is return, where error is one of the Exxx values defined in the Errors section.

If an error is detected, then the behavior is undefined.

Simultaneous asynchronous operations using the same iocb produce undefined results.  

ERRORS

EFAULT
iocbs referenced data outside of the program's accessible address space.
EINVAL
ctx refers to an unitialized aio context, the iocb pointed to by iocbs contains an improperly initialized iocb,
EBADF
The iocb contains a file descriptor that does not exist.
EINVAL
The file specified in the iocb does not support the given io operation.
 

SEE ALSO

io(3), io_cancel(3), io_fsync(3), io_getevents(3), io_prep_fsync(3), io_prep_pread(3), io_prep_pwrite(3), io_queue_init(3), io_queue_release(3), io_queue_run(3), io_queue_wait(3), io_set_callback(3), errno(3)


 

Index

NAME
SYNOPSIS
DESCRIPTION
ERRORS
SEE ALSO





Support us on Content Nation
rdf newsfeed | rss newsfeed | Atom newsfeed
- Powered by LeopardCMS - Running on Gentoo -
Copyright 2004-2020 Sascha Nitsch Unternehmensberatung GmbH
Valid XHTML1.1 : Valid CSS : buttonmaker
- Level Triple-A Conformance to Web Content Accessibility Guidelines 1.0 -
- Copyright and legal notices -
Time to create this page: 14.6 ms