msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-05-28 07:16+0900\n"
+"POT-Creation-Date: 2013-03-22 01:04+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Transfer-Encoding: 8bit\n"
#. type: TH
-#: build/C/man7/aio.7:24
+#: build/C/man7/aio.7:26
#, no-wrap
msgid "AIO"
msgstr ""
#. type: TH
-#: build/C/man7/aio.7:24
+#: build/C/man7/aio.7:26
#, no-wrap
-msgid "2010-10-02"
+msgid "2012-08-05"
msgstr ""
#. type: TH
-#: build/C/man7/aio.7:24 build/C/man3/aio_init.3:24 build/C/man2/io_cancel.2:5 build/C/man2/io_destroy.2:6 build/C/man2/io_getevents.2:5 build/C/man2/io_setup.2:5 build/C/man2/io_submit.2:5
+#: build/C/man7/aio.7:26 build/C/man3/aio_init.3:26 build/C/man2/io_cancel.2:7 build/C/man2/io_destroy.2:7 build/C/man2/io_getevents.2:7 build/C/man2/io_setup.2:7 build/C/man2/io_submit.2:7
#, no-wrap
msgid "Linux"
msgstr ""
#. type: TH
-#: build/C/man7/aio.7:24 build/C/man3/aio_cancel.3:23 build/C/man3/aio_error.3:23 build/C/man3/aio_fsync.3:23 build/C/man3/aio_init.3:24 build/C/man3/aio_read.3:23 build/C/man3/aio_return.3:23 build/C/man3/aio_suspend.3:24 build/C/man3/aio_write.3:23 build/C/man2/io_cancel.2:5 build/C/man2/io_destroy.2:6 build/C/man2/io_getevents.2:5 build/C/man2/io_setup.2:5 build/C/man2/io_submit.2:5 build/C/man3/lio_listio.3:23
+#: build/C/man7/aio.7:26 build/C/man3/aio_cancel.3:24 build/C/man3/aio_error.3:24 build/C/man3/aio_fsync.3:24 build/C/man3/aio_init.3:26 build/C/man3/aio_read.3:24 build/C/man3/aio_return.3:24 build/C/man3/aio_suspend.3:25 build/C/man3/aio_write.3:24 build/C/man2/io_cancel.2:7 build/C/man2/io_destroy.2:7 build/C/man2/io_getevents.2:7 build/C/man2/io_setup.2:7 build/C/man2/io_submit.2:7 build/C/man3/lio_listio.3:24
#, no-wrap
msgid "Linux Programmer's Manual"
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:25 build/C/man3/aio_cancel.3:24 build/C/man3/aio_error.3:24 build/C/man3/aio_fsync.3:24 build/C/man3/aio_init.3:25 build/C/man3/aio_read.3:24 build/C/man3/aio_return.3:24 build/C/man3/aio_suspend.3:25 build/C/man3/aio_write.3:24 build/C/man2/io_cancel.2:6 build/C/man2/io_destroy.2:7 build/C/man2/io_getevents.2:6 build/C/man2/io_setup.2:6 build/C/man2/io_submit.2:6 build/C/man3/lio_listio.3:24
+#: build/C/man7/aio.7:27 build/C/man3/aio_cancel.3:25 build/C/man3/aio_error.3:25 build/C/man3/aio_fsync.3:25 build/C/man3/aio_init.3:27 build/C/man3/aio_read.3:25 build/C/man3/aio_return.3:25 build/C/man3/aio_suspend.3:26 build/C/man3/aio_write.3:25 build/C/man2/io_cancel.2:8 build/C/man2/io_destroy.2:8 build/C/man2/io_getevents.2:8 build/C/man2/io_setup.2:8 build/C/man2/io_submit.2:8 build/C/man3/lio_listio.3:25
#, no-wrap
msgid "NAME"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:27
+#: build/C/man7/aio.7:29
msgid "aio - POSIX asynchronous I/O overview"
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:27 build/C/man3/aio_cancel.3:32 build/C/man3/aio_error.3:32 build/C/man3/aio_fsync.3:32 build/C/man3/aio_init.3:36 build/C/man3/aio_read.3:32 build/C/man3/aio_return.3:32 build/C/man3/aio_suspend.3:38 build/C/man3/aio_write.3:32 build/C/man2/io_cancel.2:15 build/C/man2/io_destroy.2:15 build/C/man2/io_getevents.2:18 build/C/man2/io_setup.2:14 build/C/man2/io_submit.2:15 build/C/man3/lio_listio.3:35
+#: build/C/man7/aio.7:29 build/C/man3/aio_cancel.3:33 build/C/man3/aio_error.3:33 build/C/man3/aio_fsync.3:33 build/C/man3/aio_init.3:38 build/C/man3/aio_read.3:33 build/C/man3/aio_return.3:33 build/C/man3/aio_suspend.3:39 build/C/man3/aio_write.3:33 build/C/man2/io_cancel.2:20 build/C/man2/io_destroy.2:19 build/C/man2/io_getevents.2:22 build/C/man2/io_setup.2:19 build/C/man2/io_submit.2:20 build/C/man3/lio_listio.3:36
#, no-wrap
msgid "DESCRIPTION"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:35
+#: build/C/man7/aio.7:37
msgid ""
"The POSIX asynchronous I/O (AIO) interface allows applications to initiate "
"one or more I/O operations that are performed asynchronously (i.e., in the "
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:37
+#: build/C/man7/aio.7:39
msgid "The POSIX AIO interface consists of the following functions:"
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:37
+#: build/C/man7/aio.7:39
#, no-wrap
msgid "B<aio_read>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:42
+#: build/C/man7/aio.7:44
msgid "Enqueue a read request. This is the asynchronous analog of B<read>(2)."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:42
+#: build/C/man7/aio.7:44
#, no-wrap
msgid "B<aio_write>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:47
+#: build/C/man7/aio.7:49
msgid "Enqueue a write request. This is the asynchronous analog of B<write>(2)."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:47
+#: build/C/man7/aio.7:49
#, no-wrap
msgid "B<aio_fsync>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:54
+#: build/C/man7/aio.7:56
msgid ""
"Enqueue a sync request for the I/O operations on a file descriptor. This is "
"the asynchronous analog of B<fsync>(2) and B<fdatasync>(2)."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:54
+#: build/C/man7/aio.7:56
#, no-wrap
msgid "B<aio_error>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:57
+#: build/C/man7/aio.7:59
msgid "Obtain the error status of an enqueued I/O request."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:57
+#: build/C/man7/aio.7:59
#, no-wrap
msgid "B<aio_return>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:60
+#: build/C/man7/aio.7:62
msgid "Obtain the return status of a completed I/O request."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:60
+#: build/C/man7/aio.7:62
#, no-wrap
msgid "B<aio_suspend>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:64
+#: build/C/man7/aio.7:66
msgid ""
"Suspend the caller until one or more of a specified set of I/O requests "
"completes."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:64
+#: build/C/man7/aio.7:66
#, no-wrap
msgid "B<aio_cancel>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:68
+#: build/C/man7/aio.7:70
msgid "Attempt to cancel outstanding I/O requests on a specified file descriptor."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:68
+#: build/C/man7/aio.7:70
#, no-wrap
msgid "B<lio_listio>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:71
+#: build/C/man7/aio.7:73
msgid "Enqueue multiple I/O requests using a single function call."
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:78
+#: build/C/man7/aio.7:80
msgid ""
"The I<aiocb> (\"asynchronous I/O control block\") structure defines "
"parameters that control an I/O operation. An argument of this type is "
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:82
+#: build/C/man7/aio.7:84
#, no-wrap
msgid "#include E<lt>aiocb.hE<gt>\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:85
+#: build/C/man7/aio.7:87
#, no-wrap
msgid ""
"struct aiocb {\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:94
+#: build/C/man7/aio.7:96
#, no-wrap
msgid ""
" int aio_fildes; /* File descriptor */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:97
+#: build/C/man7/aio.7:99
#, no-wrap
msgid ""
" /* Various implementation-internal fields not shown */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:99
+#: build/C/man7/aio.7:101
#, no-wrap
msgid "/* Operation codes for \\(aqaio_lio_opcode\\(aq: */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:101
+#: build/C/man7/aio.7:103
#, no-wrap
msgid "enum { LIO_READ, LIO_WRITE, LIO_NOP };\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:105
+#: build/C/man7/aio.7:107
msgid "The fields of this structure are as follows:"
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:105
+#: build/C/man7/aio.7:107
#, no-wrap
msgid "I<aio_filedes>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:108
+#: build/C/man7/aio.7:110
msgid "The file descriptor on which the I/O operation is to be performed."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:108
+#: build/C/man7/aio.7:110
#, no-wrap
msgid "I<aio_offset>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:111
+#: build/C/man7/aio.7:113
msgid "This is the file offset at which the I/O operation is to be performed."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:111
+#: build/C/man7/aio.7:113
#, no-wrap
msgid "I<aio_buf>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:114
+#: build/C/man7/aio.7:116
msgid "This is the buffer used to transfer data for a read or write operation."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:114
+#: build/C/man7/aio.7:116
#, no-wrap
msgid "I<aio_nbytes>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:118
+#: build/C/man7/aio.7:120
msgid "This is the size of the buffer pointed to by I<aio_buf>."
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:118
+#: build/C/man7/aio.7:120
#, no-wrap
msgid "I<aio_reqprio>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:127
+#: build/C/man7/aio.7:129
msgid ""
"This field specifies a value that is subtracted from the calling thread's "
"real-time priority in order to determine the priority for execution of this "
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:127
+#: build/C/man7/aio.7:129
#, no-wrap
msgid "I<aio_sigevent>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:141
+#: build/C/man7/aio.7:143
msgid ""
"This field is a structure that specifies how the caller is to be notified "
"when the asynchronous I/O operation completes. Possible values for "
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:141
+#: build/C/man7/aio.7:143
#, no-wrap
msgid "I<aio_lio_opcode>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:145
+#: build/C/man7/aio.7:147
msgid "The type of operation to be performed; used only for B<lio_listio>(3)."
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:148
+#: build/C/man7/aio.7:150
msgid ""
"In addition to the standard functions listed above, the GNU C library "
"provides the following extension to the POSIX AIO API:"
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:148
+#: build/C/man7/aio.7:150
#, no-wrap
msgid "B<aio_init>(3)"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:151
+#: build/C/man7/aio.7:153
msgid ""
"Set parameters for tuning the behavior of the glibc POSIX AIO "
"implementation."
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:151 build/C/man3/aio_read.3:133 build/C/man3/aio_suspend.3:108 build/C/man3/aio_write.3:138 build/C/man2/io_cancel.2:55 build/C/man2/io_destroy.2:50 build/C/man2/io_getevents.2:62 build/C/man2/io_setup.2:59 build/C/man2/io_submit.2:63 build/C/man3/lio_listio.3:206
-#, no-wrap
-msgid "NOTES"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man7/aio.7:158
-msgid ""
-"It is a good idea to zero out the control block buffer before use (see "
-"B<memset>(3)). The control block buffer and the buffer pointed to by "
-"I<aio_buf> must not be changed while the I/O operation is in progress. "
-"These buffers must remain valid until the I/O operation completes."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man7/aio.7:162
-msgid ""
-"Simultaneous asynchronous read or write operations using the same I<aiocb> "
-"structure yield undefined results."
-msgstr ""
-
-#. http://lse.sourceforge.net/io/aio.html
-#. http://lse.sourceforge.net/io/aionotes.txt
-#. http://lwn.net/Articles/148755/
-#. type: Plain text
-#: build/C/man7/aio.7:180
-msgid ""
-"The current Linux POSIX AIO implementation is provided in userspace by "
-"glibc. This has a number of limitations, most notably that maintaining "
-"multiple threads to perform I/O operations is expensive and scales poorly. "
-"Work has been in progress for some time on a kernel state-machine-based "
-"implementation of asynchronous I/O (see B<io_submit>(2), B<io_setup>(2), "
-"B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2)), but this "
-"implementation hasn't yet matured to the point where the POSIX AIO "
-"implementation can be completely reimplemented using the kernel system "
-"calls."
-msgstr ""
-
-#. type: SH
-#: build/C/man7/aio.7:180 build/C/man3/aio_cancel.3:100 build/C/man3/aio_error.3:65 build/C/man3/aio_fsync.3:78 build/C/man3/aio_read.3:102 build/C/man3/aio_return.3:62 build/C/man3/aio_suspend.3:87 build/C/man3/aio_write.3:109 build/C/man2/io_cancel.2:33 build/C/man2/io_destroy.2:31 build/C/man2/io_getevents.2:37 build/C/man2/io_setup.2:32 build/C/man2/io_submit.2:32 build/C/man3/lio_listio.3:145
+#: build/C/man7/aio.7:153 build/C/man3/aio_cancel.3:101 build/C/man3/aio_error.3:66 build/C/man3/aio_fsync.3:79 build/C/man3/aio_read.3:103 build/C/man3/aio_return.3:63 build/C/man3/aio_suspend.3:88 build/C/man3/aio_write.3:110 build/C/man2/io_cancel.2:38 build/C/man2/io_destroy.2:35 build/C/man2/io_getevents.2:41 build/C/man2/io_setup.2:37 build/C/man2/io_submit.2:37 build/C/man3/lio_listio.3:146
#, no-wrap
msgid "ERRORS"
msgstr ""
#. type: TP
-#: build/C/man7/aio.7:181 build/C/man3/aio_error.3:66 build/C/man3/aio_fsync.3:86 build/C/man3/aio_read.3:110 build/C/man3/aio_return.3:63 build/C/man3/aio_write.3:121 build/C/man2/io_cancel.2:40 build/C/man2/io_destroy.2:35 build/C/man2/io_getevents.2:41 build/C/man2/io_setup.2:39 build/C/man2/io_submit.2:42 build/C/man3/lio_listio.3:160
+#: build/C/man7/aio.7:154 build/C/man3/aio_error.3:67 build/C/man3/aio_fsync.3:87 build/C/man3/aio_read.3:111 build/C/man3/aio_return.3:64 build/C/man3/aio_write.3:122 build/C/man2/io_cancel.2:45 build/C/man2/io_destroy.2:39 build/C/man2/io_getevents.2:45 build/C/man2/io_setup.2:44 build/C/man2/io_submit.2:47 build/C/man3/lio_listio.3:161
#, no-wrap
msgid "B<EINVAL>"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:190
+#: build/C/man7/aio.7:163
msgid ""
"The I<aio_reqprio> field of the I<aiocb> structure was less than 0, or was "
"greater than the limit returned by the call "
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:190 build/C/man3/aio_cancel.3:109 build/C/man3/aio_error.3:77 build/C/man3/aio_fsync.3:98 build/C/man3/aio_init.3:91 build/C/man3/aio_read.3:127 build/C/man3/aio_return.3:72 build/C/man3/aio_suspend.3:102 build/C/man3/aio_write.3:132 build/C/man2/io_cancel.2:47 build/C/man2/io_destroy.2:42 build/C/man2/io_getevents.2:54 build/C/man2/io_setup.2:51 build/C/man2/io_submit.2:55 build/C/man3/lio_listio.3:200
+#: build/C/man7/aio.7:163 build/C/man3/aio_cancel.3:110 build/C/man3/aio_error.3:78 build/C/man3/aio_fsync.3:99 build/C/man3/aio_init.3:93 build/C/man3/aio_read.3:128 build/C/man3/aio_return.3:73 build/C/man3/aio_suspend.3:103 build/C/man3/aio_write.3:133 build/C/man2/io_cancel.2:52 build/C/man2/io_destroy.2:46 build/C/man2/io_getevents.2:58 build/C/man2/io_setup.2:56 build/C/man2/io_submit.2:60 build/C/man3/lio_listio.3:201
#, no-wrap
msgid "VERSIONS"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:192
+#: build/C/man7/aio.7:165
msgid "The POSIX AIO interfaces are provided by glibc since version 2.1."
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:192 build/C/man3/aio_cancel.3:113 build/C/man3/aio_error.3:81 build/C/man3/aio_fsync.3:102 build/C/man3/aio_init.3:95 build/C/man3/aio_read.3:131 build/C/man3/aio_return.3:76 build/C/man3/aio_suspend.3:106 build/C/man3/aio_write.3:136 build/C/man2/io_cancel.2:50 build/C/man2/io_destroy.2:45 build/C/man2/io_getevents.2:57 build/C/man2/io_setup.2:54 build/C/man2/io_submit.2:58 build/C/man3/lio_listio.3:204
+#: build/C/man7/aio.7:165 build/C/man3/aio_cancel.3:114 build/C/man3/aio_error.3:82 build/C/man3/aio_fsync.3:103 build/C/man3/aio_init.3:97 build/C/man3/aio_read.3:132 build/C/man3/aio_return.3:77 build/C/man3/aio_suspend.3:107 build/C/man3/aio_write.3:137 build/C/man2/io_cancel.2:55 build/C/man2/io_destroy.2:49 build/C/man2/io_getevents.2:61 build/C/man2/io_setup.2:59 build/C/man2/io_submit.2:63 build/C/man3/lio_listio.3:205
#, no-wrap
msgid "CONFORMING TO"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:194 build/C/man3/aio_cancel.3:115 build/C/man3/aio_error.3:83 build/C/man3/aio_fsync.3:104 build/C/man3/aio_read.3:133 build/C/man3/aio_return.3:78 build/C/man3/aio_suspend.3:108 build/C/man3/aio_write.3:138 build/C/man3/lio_listio.3:206
+#: build/C/man7/aio.7:167 build/C/man3/aio_cancel.3:116 build/C/man3/aio_error.3:84 build/C/man3/aio_fsync.3:105 build/C/man3/aio_read.3:134 build/C/man3/aio_return.3:79 build/C/man3/aio_suspend.3:109 build/C/man3/aio_write.3:139 build/C/man3/lio_listio.3:207
msgid "POSIX.1-2001, POSIX.1-2008."
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:194 build/C/man3/aio_cancel.3:115 build/C/man3/aio_error.3:83 build/C/man3/aio_read.3:145 build/C/man3/aio_return.3:78
+#: build/C/man7/aio.7:167 build/C/man3/aio_read.3:134 build/C/man3/aio_suspend.3:109 build/C/man3/aio_write.3:139 build/C/man2/io_cancel.2:60 build/C/man2/io_destroy.2:54 build/C/man2/io_getevents.2:66 build/C/man2/io_setup.2:64 build/C/man2/io_submit.2:68 build/C/man3/lio_listio.3:207
+#, no-wrap
+msgid "NOTES"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/aio.7:174
+msgid ""
+"It is a good idea to zero out the control block buffer before use (see "
+"B<memset>(3)). The control block buffer and the buffer pointed to by "
+"I<aio_buf> must not be changed while the I/O operation is in progress. "
+"These buffers must remain valid until the I/O operation completes."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/aio.7:178
+msgid ""
+"Simultaneous asynchronous read or write operations using the same I<aiocb> "
+"structure yield undefined results."
+msgstr ""
+
+#. http://lse.sourceforge.net/io/aio.html
+#. http://lse.sourceforge.net/io/aionotes.txt
+#. http://lwn.net/Articles/148755/
+#. type: Plain text
+#: build/C/man7/aio.7:196
+msgid ""
+"The current Linux POSIX AIO implementation is provided in user space by "
+"glibc. This has a number of limitations, most notably that maintaining "
+"multiple threads to perform I/O operations is expensive and scales poorly. "
+"Work has been in progress for some time on a kernel state-machine-based "
+"implementation of asynchronous I/O (see B<io_submit>(2), B<io_setup>(2), "
+"B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2)), but this "
+"implementation hasn't yet matured to the point where the POSIX AIO "
+"implementation can be completely reimplemented using the kernel system "
+"calls."
+msgstr ""
+
+#. type: SH
+#: build/C/man7/aio.7:196 build/C/man3/aio_cancel.3:116 build/C/man3/aio_error.3:84 build/C/man3/aio_read.3:146 build/C/man3/aio_return.3:79
#, no-wrap
msgid "EXAMPLE"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:207
+#: build/C/man7/aio.7:209
msgid ""
"The program below opens each of the files named in its command-line "
"arguments and queues a request on the resulting file descriptor using "
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:213
+#: build/C/man7/aio.7:215
msgid ""
"The B<SIGQUIT> signal (generated by typing control-\\e) causes the program "
"to request cancellation of each of the outstanding requests using "
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:218
+#: build/C/man7/aio.7:220
msgid ""
"Here is an example of what we might see when running this program. In this "
"example, the program queues two requests to standard input, and these are "
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:242
+#: build/C/man7/aio.7:244
#, no-wrap
msgid ""
"$ B<./a.out /dev/stdin /dev/stdin>\n"
msgstr ""
#. type: SS
-#: build/C/man7/aio.7:244
+#: build/C/man7/aio.7:246
#, no-wrap
msgid "Program source"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:253
+#: build/C/man7/aio.7:255
#, no-wrap
msgid ""
"#include E<lt>stdlib.hE<gt>\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:255
+#: build/C/man7/aio.7:257
#, no-wrap
msgid "#define BUF_SIZE 20 /* Size of buffers for read operations */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:257
+#: build/C/man7/aio.7:259
#, no-wrap
msgid "#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:259
+#: build/C/man7/aio.7:261
#, no-wrap
msgid "#define errMsg(msg) do { perror(msg); } while (0)\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:266
+#: build/C/man7/aio.7:268
#, no-wrap
msgid ""
"struct ioRequest { /* Application-defined structure for tracking\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:270
+#: build/C/man7/aio.7:272
#, no-wrap
msgid ""
"static volatile sig_atomic_t gotSIGQUIT = 0;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:276
+#: build/C/man7/aio.7:278
#, no-wrap
msgid ""
"static void /* Handler for SIGQUIT */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:278
+#: build/C/man7/aio.7:280
#, no-wrap
msgid "#define IO_SIGNAL SIGUSR1 /* Signal used to notify I/O completion */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:283
+#: build/C/man7/aio.7:285
#, no-wrap
msgid ""
"static void /* Handler for I/O completion signal */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:289
+#: build/C/man7/aio.7:291
#, no-wrap
msgid ""
" /* The corresponding ioRequest structure would be available as\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:299
+#: build/C/man7/aio.7:301
#, no-wrap
msgid ""
"int\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:305
+#: build/C/man7/aio.7:307
#, no-wrap
msgid ""
" if (argc E<lt> 2) {\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:307
+#: build/C/man7/aio.7:309
#, no-wrap
msgid " numReqs = argc - 1;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:309
+#: build/C/man7/aio.7:311
#, no-wrap
msgid " /* Allocate our arrays */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:313
+#: build/C/man7/aio.7:315
#, no-wrap
msgid ""
" ioList = calloc(numReqs, sizeof(struct ioRequest));\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:317
+#: build/C/man7/aio.7:319
#, no-wrap
msgid ""
" aiocbList = calloc(numReqs, sizeof(struct aiocb));\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:319
+#: build/C/man7/aio.7:321
#, no-wrap
msgid " /* Establish handlers for SIGQUIT and the I/O completion signal */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:322
+#: build/C/man7/aio.7:324
#, no-wrap
msgid ""
" sa.sa_flags = SA_RESTART;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:326
+#: build/C/man7/aio.7:328
#, no-wrap
msgid ""
" sa.sa_handler = quitHandler;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:331
+#: build/C/man7/aio.7:333
#, no-wrap
msgid ""
" sa.sa_flags = SA_RESTART | SA_SIGINFO;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:334
+#: build/C/man7/aio.7:336
#, no-wrap
msgid ""
" /* Open each file specified on the command line, and queue\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:339
+#: build/C/man7/aio.7:341
#, no-wrap
msgid ""
" for (j = 0; j E<lt> numReqs; j++) {\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:345
+#: build/C/man7/aio.7:347
#, no-wrap
msgid ""
" ioList[j].aiocbp-E<gt>aio_fildes = open(argv[j + 1], O_RDONLY);\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:349
+#: build/C/man7/aio.7:351
#, no-wrap
msgid ""
" ioList[j].aiocbp-E<gt>aio_buf = malloc(BUF_SIZE);\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:357
+#: build/C/man7/aio.7:359
#, no-wrap
msgid ""
" ioList[j].aiocbp-E<gt>aio_nbytes = BUF_SIZE;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:362
+#: build/C/man7/aio.7:364
#, no-wrap
msgid ""
" s = aio_read(ioList[j].aiocbp);\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:364
+#: build/C/man7/aio.7:366
#, no-wrap
msgid " openReqs = numReqs;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:366
+#: build/C/man7/aio.7:368
#, no-wrap
msgid " /* Loop, monitoring status of I/O requests */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:369
+#: build/C/man7/aio.7:371
#, no-wrap
msgid ""
" while (openReqs E<gt> 0) {\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:371
+#: build/C/man7/aio.7:373
#, no-wrap
msgid " if (gotSIGQUIT) {\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:375
+#: build/C/man7/aio.7:377
#, no-wrap
msgid ""
" /* On receipt of SIGQUIT, attempt to cancel each of the\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:377
+#: build/C/man7/aio.7:379
#, no-wrap
msgid " printf(\"got SIGQUIT; canceling I/O requests: \\en\");\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:394
+#: build/C/man7/aio.7:396
#, no-wrap
msgid ""
" for (j = 0; j E<lt> numReqs; j++) {\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:397
+#: build/C/man7/aio.7:399
#, no-wrap
msgid ""
" gotSIGQUIT = 0;\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:400
+#: build/C/man7/aio.7:402
#, no-wrap
msgid ""
" /* Check the status of each I/O request that is still\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:407
+#: build/C/man7/aio.7:409
#, no-wrap
msgid ""
" printf(\"aio_error():\\en\");\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:422
+#: build/C/man7/aio.7:424
#, no-wrap
msgid ""
" switch (ioList[j].status) {\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:428
+#: build/C/man7/aio.7:430
#, no-wrap
msgid ""
" if (ioList[j].status != EINPROGRESS)\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:430
+#: build/C/man7/aio.7:432
#, no-wrap
msgid " printf(\"All I/O requests completed\\en\");\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:432
+#: build/C/man7/aio.7:434
#, no-wrap
msgid " /* Check status return of all I/O requests */\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:436
+#: build/C/man7/aio.7:438
#, no-wrap
msgid ""
" printf(\"aio_return():\\en\");\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:441
+#: build/C/man7/aio.7:443
#, no-wrap
msgid ""
" s = aio_return(ioList[j].aiocbp);\n"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:444
+#: build/C/man7/aio.7:446
#, no-wrap
msgid ""
" exit(EXIT_SUCCESS);\n"
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:445 build/C/man3/aio_cancel.3:118 build/C/man3/aio_error.3:86 build/C/man3/aio_fsync.3:104 build/C/man3/aio_init.3:97 build/C/man3/aio_read.3:148 build/C/man3/aio_return.3:81 build/C/man3/aio_suspend.3:128 build/C/man3/aio_write.3:150 build/C/man2/io_cancel.2:85 build/C/man2/io_destroy.2:80 build/C/man2/io_getevents.2:92 build/C/man2/io_setup.2:89 build/C/man2/io_submit.2:93 build/C/man3/lio_listio.3:218
+#: build/C/man7/aio.7:447 build/C/man3/aio_cancel.3:119 build/C/man3/aio_error.3:87 build/C/man3/aio_fsync.3:105 build/C/man3/aio_init.3:99 build/C/man3/aio_read.3:149 build/C/man3/aio_return.3:82 build/C/man3/aio_suspend.3:129 build/C/man3/aio_write.3:151 build/C/man2/io_cancel.2:90 build/C/man2/io_destroy.2:84 build/C/man2/io_getevents.2:101 build/C/man2/io_setup.2:94 build/C/man2/io_submit.2:98 build/C/man3/lio_listio.3:219
#, no-wrap
msgid "SEE ALSO"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:460
+#: build/C/man7/aio.7:462
msgid ""
"B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), "
"B<io_submit>(2), B<aio_cancel>(3), B<aio_error>(3), B<aio_init>(3), "
-"B<aio_read>(3), B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3), "
-"http://www.squid-cache.org/~adrian/Reprint-Pulavarty-OLS2003.pdf"
+"B<aio_read>(3), B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3)"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/aio.7:465
+msgid ""
+"E<.UR "
+"http://www.squid-cache.org\\:/~adrian\\:/Reprint-Pulavarty-OLS2003.pdf> "
+"E<.UE>"
msgstr ""
#. type: SH
-#: build/C/man7/aio.7:460 build/C/man3/aio_cancel.3:127 build/C/man3/aio_error.3:95 build/C/man3/aio_fsync.3:114 build/C/man3/aio_init.3:99 build/C/man3/aio_read.3:157 build/C/man3/aio_return.3:90 build/C/man3/aio_suspend.3:138 build/C/man3/aio_write.3:159 build/C/man2/io_cancel.2:93 build/C/man2/io_destroy.2:88 build/C/man2/io_getevents.2:102 build/C/man2/io_setup.2:97 build/C/man2/io_submit.2:101 build/C/man3/lio_listio.3:226
+#: build/C/man7/aio.7:465 build/C/man3/aio_cancel.3:128 build/C/man3/aio_error.3:96 build/C/man3/aio_fsync.3:115 build/C/man3/aio_init.3:101 build/C/man3/aio_read.3:158 build/C/man3/aio_return.3:91 build/C/man3/aio_suspend.3:139 build/C/man3/aio_write.3:160 build/C/man2/io_cancel.2:98 build/C/man2/io_destroy.2:92 build/C/man2/io_getevents.2:111 build/C/man2/io_setup.2:102 build/C/man2/io_submit.2:106 build/C/man3/lio_listio.3:227
#, no-wrap
msgid "COLOPHON"
msgstr ""
#. type: Plain text
-#: build/C/man7/aio.7:467 build/C/man3/aio_cancel.3:134 build/C/man3/aio_error.3:102 build/C/man3/aio_fsync.3:121 build/C/man3/aio_init.3:106 build/C/man3/aio_read.3:164 build/C/man3/aio_return.3:97 build/C/man3/aio_suspend.3:145 build/C/man3/aio_write.3:166 build/C/man2/io_cancel.2:100 build/C/man2/io_destroy.2:95 build/C/man2/io_getevents.2:109 build/C/man2/io_setup.2:104 build/C/man2/io_submit.2:108 build/C/man3/lio_listio.3:233
+#: build/C/man7/aio.7:472 build/C/man3/aio_cancel.3:135 build/C/man3/aio_error.3:103 build/C/man3/aio_fsync.3:122 build/C/man3/aio_init.3:108 build/C/man3/aio_read.3:165 build/C/man3/aio_return.3:98 build/C/man3/aio_suspend.3:146 build/C/man3/aio_write.3:167 build/C/man2/io_cancel.2:105 build/C/man2/io_destroy.2:99 build/C/man2/io_getevents.2:118 build/C/man2/io_setup.2:109 build/C/man2/io_submit.2:113 build/C/man3/lio_listio.3:234
msgid ""
-"This page is part of release 3.41 of the Linux I<man-pages> project. A "
+"This page is part of release 3.50 of the Linux I<man-pages> project. A "
"description of the project, and information about reporting bugs, can be "
"found at http://www.kernel.org/doc/man-pages/."
msgstr ""
#. type: TH
-#: build/C/man3/aio_cancel.3:23
+#: build/C/man3/aio_cancel.3:24
#, no-wrap
msgid "AIO_CANCEL"
msgstr ""
#. type: TH
-#: build/C/man3/aio_cancel.3:23 build/C/man3/aio_error.3:23 build/C/man3/aio_fsync.3:23 build/C/man3/aio_read.3:23 build/C/man3/aio_return.3:23 build/C/man3/aio_suspend.3:24 build/C/man3/aio_write.3:23 build/C/man2/io_cancel.2:5 build/C/man2/io_destroy.2:6 build/C/man2/io_getevents.2:5 build/C/man2/io_setup.2:5 build/C/man2/io_submit.2:5 build/C/man3/lio_listio.3:23
+#: build/C/man3/aio_cancel.3:24 build/C/man3/aio_error.3:24 build/C/man3/aio_fsync.3:24 build/C/man3/aio_read.3:24 build/C/man3/aio_return.3:24 build/C/man3/aio_suspend.3:25 build/C/man3/aio_write.3:24 build/C/man3/lio_listio.3:24
#, no-wrap
msgid "2012-05-08"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:26
+#: build/C/man3/aio_cancel.3:27
msgid "aio_cancel - cancel an outstanding asynchronous I/O request"
msgstr ""
#. type: SH
-#: build/C/man3/aio_cancel.3:26 build/C/man3/aio_error.3:26 build/C/man3/aio_fsync.3:26 build/C/man3/aio_init.3:27 build/C/man3/aio_read.3:26 build/C/man3/aio_return.3:26 build/C/man3/aio_suspend.3:27 build/C/man3/aio_write.3:26 build/C/man2/io_cancel.2:8 build/C/man2/io_destroy.2:9 build/C/man2/io_getevents.2:8 build/C/man2/io_setup.2:8 build/C/man2/io_submit.2:8 build/C/man3/lio_listio.3:26
+#: build/C/man3/aio_cancel.3:27 build/C/man3/aio_error.3:27 build/C/man3/aio_fsync.3:27 build/C/man3/aio_init.3:29 build/C/man3/aio_read.3:27 build/C/man3/aio_return.3:27 build/C/man3/aio_suspend.3:28 build/C/man3/aio_write.3:27 build/C/man2/io_cancel.2:10 build/C/man2/io_destroy.2:10 build/C/man2/io_getevents.2:10 build/C/man2/io_setup.2:10 build/C/man2/io_submit.2:10 build/C/man3/lio_listio.3:27
#, no-wrap
msgid "SYNOPSIS"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:28 build/C/man3/aio_error.3:28 build/C/man3/aio_fsync.3:28 build/C/man3/aio_read.3:28 build/C/man3/aio_return.3:28 build/C/man3/aio_write.3:28
+#: build/C/man3/aio_cancel.3:29 build/C/man3/aio_error.3:29 build/C/man3/aio_fsync.3:29 build/C/man3/aio_read.3:29 build/C/man3/aio_return.3:29 build/C/man3/aio_write.3:29
msgid "B<#include E<lt>aio.hE<gt>>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:30
+#: build/C/man3/aio_cancel.3:31
msgid "B<int aio_cancel(int >I<fd>B<, struct aiocb *>I<aiocbp>B<);>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:32 build/C/man3/aio_error.3:32 build/C/man3/aio_fsync.3:32 build/C/man3/aio_init.3:36 build/C/man3/aio_read.3:32 build/C/man3/aio_return.3:32 build/C/man3/aio_write.3:32
+#: build/C/man3/aio_cancel.3:33 build/C/man3/aio_error.3:33 build/C/man3/aio_fsync.3:33 build/C/man3/aio_init.3:38 build/C/man3/aio_read.3:33 build/C/man3/aio_return.3:33 build/C/man3/aio_write.3:33
msgid "Link with I<-lrt>."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:50
+#: build/C/man3/aio_cancel.3:51
msgid ""
"The B<aio_cancel>() function attempts to cancel outstanding asynchronous "
"I/O requests for the file descriptor I<fd>. If I<aiocbp> is NULL, all such "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:62
+#: build/C/man3/aio_cancel.3:63
msgid ""
"Normal asynchronous notification occurs for canceled requests (see B<aio>(7) "
"and B<sigevent>(7)). The request return status (B<aio_return>(3)) is set "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:69
+#: build/C/man3/aio_cancel.3:70
msgid ""
"If the request could not be canceled, then it will terminate in the usual "
"way after performing the I/O operation. (In this case, B<aio_error>(3) "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:76
+#: build/C/man3/aio_cancel.3:77
msgid ""
"If I<aiocbp> is not NULL, and I<fd> differs from the file descriptor with "
"which the asynchronous operation was initiated, unspecified results occur."
#. FreeBSD: not those on raw disk devices.
#. type: Plain text
-#: build/C/man3/aio_cancel.3:79
+#: build/C/man3/aio_cancel.3:80
msgid "Which operations are cancelable is implementation-defined."
msgstr ""
#. type: SH
-#: build/C/man3/aio_cancel.3:79 build/C/man3/aio_error.3:43 build/C/man3/aio_fsync.3:72 build/C/man3/aio_read.3:87 build/C/man3/aio_return.3:48 build/C/man3/aio_suspend.3:79 build/C/man3/aio_write.3:94 build/C/man2/io_cancel.2:28 build/C/man2/io_destroy.2:26 build/C/man2/io_getevents.2:31 build/C/man2/io_setup.2:27 build/C/man2/io_submit.2:26 build/C/man3/lio_listio.3:107
+#: build/C/man3/aio_cancel.3:80 build/C/man3/aio_error.3:44 build/C/man3/aio_fsync.3:73 build/C/man3/aio_read.3:88 build/C/man3/aio_return.3:49 build/C/man3/aio_suspend.3:80 build/C/man3/aio_write.3:95 build/C/man2/io_cancel.2:33 build/C/man2/io_destroy.2:30 build/C/man2/io_getevents.2:35 build/C/man2/io_setup.2:32 build/C/man2/io_submit.2:31 build/C/man3/lio_listio.3:108
#, no-wrap
msgid "RETURN VALUE"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:83
+#: build/C/man3/aio_cancel.3:84
msgid "The B<aio_cancel>() function returns one of the following values:"
msgstr ""
#. type: TP
-#: build/C/man3/aio_cancel.3:83
+#: build/C/man3/aio_cancel.3:84
#, no-wrap
msgid "B<AIO_CANCELED>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:86
+#: build/C/man3/aio_cancel.3:87
msgid "All requests were successfully canceled."
msgstr ""
#. type: TP
-#: build/C/man3/aio_cancel.3:86
+#: build/C/man3/aio_cancel.3:87
#, no-wrap
msgid "B<AIO_NOTCANCELED>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:92
+#: build/C/man3/aio_cancel.3:93
msgid ""
"At least one of the requests specified was not canceled because it was in "
"progress. In this case, one may check the status of individual requests "
msgstr ""
#. type: TP
-#: build/C/man3/aio_cancel.3:92
+#: build/C/man3/aio_cancel.3:93
#, no-wrap
msgid "B<AIO_ALLDONE>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:95
+#: build/C/man3/aio_cancel.3:96
msgid "All requests had already been completed before the call."
msgstr ""
#. type: TP
-#: build/C/man3/aio_cancel.3:95
+#: build/C/man3/aio_cancel.3:96
#, no-wrap
msgid "-1"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:100
+#: build/C/man3/aio_cancel.3:101
msgid ""
"An error occurred. The cause of the error can be found by inspecting "
"I<errno>."
msgstr ""
#. type: TP
-#: build/C/man3/aio_cancel.3:101 build/C/man3/aio_fsync.3:82 build/C/man3/aio_read.3:106 build/C/man3/aio_write.3:113 build/C/man2/io_submit.2:36
+#: build/C/man3/aio_cancel.3:102 build/C/man3/aio_fsync.3:83 build/C/man3/aio_read.3:107 build/C/man3/aio_write.3:114 build/C/man2/io_submit.2:41
#, no-wrap
msgid "B<EBADF>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:105
+#: build/C/man3/aio_cancel.3:106
msgid "I<fd> is not a valid file descriptor."
msgstr ""
#. type: TP
-#: build/C/man3/aio_cancel.3:105 build/C/man3/aio_error.3:73 build/C/man3/aio_fsync.3:94 build/C/man3/aio_read.3:118 build/C/man3/aio_return.3:68 build/C/man3/aio_suspend.3:98 build/C/man3/aio_write.3:128 build/C/man2/io_cancel.2:43 build/C/man2/io_destroy.2:38 build/C/man2/io_getevents.2:50 build/C/man2/io_setup.2:47 build/C/man2/io_submit.2:51
+#: build/C/man3/aio_cancel.3:106 build/C/man3/aio_error.3:74 build/C/man3/aio_fsync.3:95 build/C/man3/aio_read.3:119 build/C/man3/aio_return.3:69 build/C/man3/aio_suspend.3:99 build/C/man3/aio_write.3:129 build/C/man2/io_cancel.2:48 build/C/man2/io_destroy.2:42 build/C/man2/io_getevents.2:54 build/C/man2/io_setup.2:52 build/C/man2/io_submit.2:56
#, no-wrap
msgid "B<ENOSYS>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:109
-msgid "B<aio_cancel()> is not implemented."
+#: build/C/man3/aio_cancel.3:110
+msgid "B<aio_cancel>() is not implemented."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:113
+#: build/C/man3/aio_cancel.3:114
msgid "The B<aio_cancel>() function is available since glibc 2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:118 build/C/man3/aio_error.3:86 build/C/man3/aio_read.3:148 build/C/man3/aio_return.3:81
+#: build/C/man3/aio_cancel.3:119 build/C/man3/aio_error.3:87 build/C/man3/aio_read.3:149 build/C/man3/aio_return.3:82
msgid "See B<aio>(7)."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_cancel.3:127
+#: build/C/man3/aio_cancel.3:128
msgid ""
"B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
"B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/aio_error.3:23
+#: build/C/man3/aio_error.3:24
#, no-wrap
msgid "AIO_ERROR"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:26
+#: build/C/man3/aio_error.3:27
msgid "aio_error - get error status of asynchronous I/O operation"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:30
+#: build/C/man3/aio_error.3:31
msgid "B<int aio_error(const struct aiocb *>I<aiocbp>B<);>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:43
+#: build/C/man3/aio_error.3:44
msgid ""
"The B<aio_error>() function returns the error status for the asynchronous "
"I/O request with control block pointed to by I<aiocbp>. (See B<aio>(7) for "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:45
+#: build/C/man3/aio_error.3:46
msgid "This function returns one of the following:"
msgstr ""
#. type: IP
-#: build/C/man3/aio_error.3:45 build/C/man3/aio_error.3:49 build/C/man3/aio_error.3:52 build/C/man3/aio_error.3:54 build/C/man3/aio_suspend.3:42 build/C/man3/aio_suspend.3:46 build/C/man3/aio_suspend.3:48
+#: build/C/man3/aio_error.3:46 build/C/man3/aio_error.3:50 build/C/man3/aio_error.3:53 build/C/man3/aio_error.3:55 build/C/man3/aio_suspend.3:43 build/C/man3/aio_suspend.3:47 build/C/man3/aio_suspend.3:49
#, no-wrap
msgid "*"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:49
+#: build/C/man3/aio_error.3:50
msgid "B<EINPROGRESS>, if the request has not been completed yet."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:52
+#: build/C/man3/aio_error.3:53
msgid "B<ECANCELED>, if the request was canceled."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:54
+#: build/C/man3/aio_error.3:55
msgid "0, if the request completed successfully."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:65
+#: build/C/man3/aio_error.3:66
msgid ""
"A positive error number, if the asynchronous I/O operation failed. This is "
"the same value that would have been stored in the I<errno> variable in the "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:73
+#: build/C/man3/aio_error.3:74
msgid ""
"I<aiocbp> does not point at a control block for an asynchronous I/O request "
"of which the return status (see B<aio_return>(3)) has not been retrieved "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:77
+#: build/C/man3/aio_error.3:78
msgid "B<aio_error>() is not implemented."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:81
+#: build/C/man3/aio_error.3:82
msgid "The B<aio_error>() function is available since glibc 2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_error.3:95
+#: build/C/man3/aio_error.3:96
msgid ""
"B<aio_cancel>(3), B<aio_fsync>(3), B<aio_read>(3), B<aio_return>(3), "
"B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/aio_fsync.3:23
+#: build/C/man3/aio_fsync.3:24
#, no-wrap
msgid "AIO_FSYNC"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:26
+#: build/C/man3/aio_fsync.3:27
msgid "aio_fsync - asynchronous file synchronization"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:30
+#: build/C/man3/aio_fsync.3:31
msgid "B<int aio_fsync(int >I<op>B<, struct aiocb *>I<aiocbp>B<);>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:43
+#: build/C/man3/aio_fsync.3:44
msgid ""
"The B<aio_fsync>() function does a sync on all outstanding asynchronous I/O "
"operations associated with I<aiocbp-E<gt>aio_fildes>. (See B<aio>(7) for a "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:57
+#: build/C/man3/aio_fsync.3:58
msgid ""
"More precisely, if I<op> is B<O_SYNC>, then all currently queued I/O "
"operations shall be completed as if by a call of B<fsync>(2), and if I<op> "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:59
+#: build/C/man3/aio_fsync.3:60
msgid "Note that this is a request only; it does not wait for I/O completion."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:72
+#: build/C/man3/aio_fsync.3:73
msgid ""
"Apart from I<aio_fildes>, the only field in the structure pointed to by "
"I<aiocbp> that is used by this call is the I<aio_sigevent> field (a "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:78
+#: build/C/man3/aio_fsync.3:79
msgid ""
"On success (the sync request was successfully queued) this function returns "
"0. On error -1 is returned, and I<errno> is set appropriately."
msgstr ""
#. type: TP
-#: build/C/man3/aio_fsync.3:79 build/C/man3/aio_read.3:103 build/C/man3/aio_suspend.3:88 build/C/man3/aio_write.3:110 build/C/man2/io_cancel.2:34 build/C/man2/io_setup.2:33 build/C/man2/io_submit.2:33 build/C/man3/lio_listio.3:149 build/C/man3/lio_listio.3:152
+#: build/C/man3/aio_fsync.3:80 build/C/man3/aio_read.3:104 build/C/man3/aio_suspend.3:89 build/C/man3/aio_write.3:111 build/C/man2/io_cancel.2:39 build/C/man2/io_setup.2:38 build/C/man2/io_submit.2:38 build/C/man3/lio_listio.3:150 build/C/man3/lio_listio.3:153
#, no-wrap
msgid "B<EAGAIN>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:82 build/C/man3/aio_read.3:106 build/C/man3/aio_write.3:113 build/C/man3/lio_listio.3:152
+#: build/C/man3/aio_fsync.3:83 build/C/man3/aio_read.3:107 build/C/man3/aio_write.3:114 build/C/man3/lio_listio.3:153
msgid "Out of resources."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:86 build/C/man3/aio_write.3:117
+#: build/C/man3/aio_fsync.3:87 build/C/man3/aio_write.3:118
msgid "I<aio_fildes> is not a valid file descriptor open for writing."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:94
+#: build/C/man3/aio_fsync.3:95
msgid ""
"Synchronized I/O is not supported for this file, or I<op> is not B<O_SYNC> "
"or B<O_DSYNC>."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:98
+#: build/C/man3/aio_fsync.3:99
msgid "B<aio_fsync>() is not implemented."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:102
+#: build/C/man3/aio_fsync.3:103
msgid "The B<aio_fsync>() function is available since glibc 2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_fsync.3:114
+#: build/C/man3/aio_fsync.3:115
msgid ""
"B<aio_cancel>(3), B<aio_error>(3), B<aio_read>(3), B<aio_return>(3), "
"B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), "
msgstr ""
#. type: TH
-#: build/C/man3/aio_init.3:24
+#: build/C/man3/aio_init.3:26
#, no-wrap
msgid "AIO_INIT"
msgstr ""
#. type: TH
-#: build/C/man3/aio_init.3:24
+#: build/C/man3/aio_init.3:26
#, no-wrap
msgid "2012-04-26"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:27
+#: build/C/man3/aio_init.3:29
msgid "aio_init - asynchronous I/O initialization"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:31
+#: build/C/man3/aio_init.3:33
#, no-wrap
msgid ""
"B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:33
+#: build/C/man3/aio_init.3:35
#, no-wrap
msgid "B<void aio_init(const struct aioinit *>I<init>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:43
+#: build/C/man3/aio_init.3:45
msgid ""
"The GNU-specific B<aio_init>() function allows the caller to provide tuning "
"hints to the glibc POSIX AIO implementation. Use of this function is "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:47
+#: build/C/man3/aio_init.3:49
msgid ""
"The tuning information is provided in the buffer pointed to by the argument "
"I<init>. This buffer is a structure of the following form:"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:62
+#: build/C/man3/aio_init.3:64
#, no-wrap
msgid ""
"struct aioinit {\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:68
+#: build/C/man3/aio_init.3:70
msgid "The following fields are used in the I<aioinit> structure:"
msgstr ""
#. type: TP
-#: build/C/man3/aio_init.3:68
+#: build/C/man3/aio_init.3:70
#, no-wrap
msgid "I<aio_threads>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:76
+#: build/C/man3/aio_init.3:78
msgid ""
"This field specifies the maximum number of worker threads that may be used "
"by the implementation. If the number of outstanding I/O operations exceeds "
msgstr ""
#. type: TP
-#: build/C/man3/aio_init.3:76
+#: build/C/man3/aio_init.3:78
#, no-wrap
msgid "I<aio_num>"
msgstr ""
#. FIXME But, if aio_num > 32, the behavior looks strange. See
#. http://sourceware.org/bugzilla/show_bug.cgi?id=12083
#. type: Plain text
-#: build/C/man3/aio_init.3:85
+#: build/C/man3/aio_init.3:87
msgid ""
"This field should specify the maximum number of simultaneous I/O requests "
"that the caller expects to enqueue. If a value less than 32 is specified "
msgstr ""
#. type: TP
-#: build/C/man3/aio_init.3:85
+#: build/C/man3/aio_init.3:87
#, no-wrap
msgid "I<aio_idle_time>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:91
+#: build/C/man3/aio_init.3:93
msgid ""
"This field specifies the amount of time in seconds that a worker thread "
"should wait for further requests before terminating, after having completed "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:95
+#: build/C/man3/aio_init.3:97
msgid "The B<aio_init>() function is available since glibc 2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:97
+#: build/C/man3/aio_init.3:99
msgid "This function is a GNU extension."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_init.3:99
+#: build/C/man3/aio_init.3:101
msgid "B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/aio_read.3:23
+#: build/C/man3/aio_read.3:24
#, no-wrap
msgid "AIO_READ"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:26
+#: build/C/man3/aio_read.3:27
msgid "aio_read - asynchronous read"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:30
+#: build/C/man3/aio_read.3:31
msgid "B<int aio_read(struct aiocb *>I<aiocbp>B<);>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:40
+#: build/C/man3/aio_read.3:41
msgid ""
"The B<aio_read>() function queues the I/O request described by the buffer "
"pointed to by I<aiocbp>. This function is the asynchronous analog of "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:42
+#: build/C/man3/aio_read.3:43
#, no-wrap
msgid " read(fd, buf, count)\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:55 build/C/man3/aio_write.3:55
+#: build/C/man3/aio_read.3:56 build/C/man3/aio_write.3:56
msgid ""
"correspond (in order) to the fields I<aio_fildes>, I<aio_buf>, and "
"I<aio_nbytes> of the structure pointed to by I<aiocbp>. (See B<aio>(7) for "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:61
+#: build/C/man3/aio_read.3:62
msgid ""
"The data is read starting at the absolute file offset "
"I<aiocbp-E<gt>aio_offset>, regardless of the current file offset. After the "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:74
+#: build/C/man3/aio_read.3:75
msgid ""
"The \"asynchronous\" means that this call returns as soon as the request has "
"been enqueued; the read may or may not have completed when the call "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:81 build/C/man3/aio_write.3:88
+#: build/C/man3/aio_read.3:82 build/C/man3/aio_write.3:89
msgid ""
"If B<_POSIX_PRIORITIZED_IO> is defined, and this file supports it, then the "
"asynchronous operation is submitted at a priority equal to that of the "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:85 build/C/man3/aio_write.3:92
+#: build/C/man3/aio_read.3:86 build/C/man3/aio_write.3:93
msgid "The field I<aiocbp-E<gt>aio_lio_opcode> is ignored."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:87
+#: build/C/man3/aio_read.3:88
msgid "No data is read from a regular file beyond its maximum offset."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:102 build/C/man3/aio_write.3:109
+#: build/C/man3/aio_read.3:103 build/C/man3/aio_write.3:110
msgid ""
"On success, 0 is returned. On error the request is not enqueued, -1 is "
"returned, and I<errno> is set appropriately. If an error is only detected "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:110
+#: build/C/man3/aio_read.3:111
msgid "I<aio_fildes> is not a valid file descriptor open for reading."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:118
+#: build/C/man3/aio_read.3:119
msgid "One or more of I<aio_offset>, I<aio_reqprio>, or I<aio_nbytes> are invalid."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:122
+#: build/C/man3/aio_read.3:123
msgid "B<aio_read>() is not implemented."
msgstr ""
#. type: TP
-#: build/C/man3/aio_read.3:122
+#: build/C/man3/aio_read.3:123
#, no-wrap
msgid "B<EOVERFLOW>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:127
+#: build/C/man3/aio_read.3:128
msgid ""
"The file is a regular file, we start reading before end-of-file and want at "
"least one byte, but the starting position is past the maximum offset for "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:131
+#: build/C/man3/aio_read.3:132
msgid "The B<aio_read>() function is available since glibc 2.1."
msgstr ""
#. or the control block of the operation
#. type: Plain text
-#: build/C/man3/aio_read.3:141
+#: build/C/man3/aio_read.3:142
msgid ""
"It is a good idea to zero out the control block before use. The control "
"block must not be changed while the read operation is in progress. The "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:145 build/C/man3/aio_write.3:150 build/C/man3/lio_listio.3:218
+#: build/C/man3/aio_read.3:146 build/C/man3/aio_write.3:151 build/C/man3/lio_listio.3:219
msgid ""
"Simultaneous I/O operations specifying the same I<aiocb> structure produce "
"undefined results."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_read.3:157
+#: build/C/man3/aio_read.3:158
msgid ""
"B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
"B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/aio_return.3:23
+#: build/C/man3/aio_return.3:24
#, no-wrap
msgid "AIO_RETURN"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:26
+#: build/C/man3/aio_return.3:27
msgid "aio_return - get return status of asynchronous I/O operation"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:30
+#: build/C/man3/aio_return.3:31
msgid "B<ssize_t aio_return(struct aiocb *>I<aiocbp>B<);>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:43
+#: build/C/man3/aio_return.3:44
msgid ""
"The B<aio_return>() function returns the final return status for the "
"asynchronous I/O request with control block pointed to by I<aiocbp>. (See "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:48
+#: build/C/man3/aio_return.3:49
msgid ""
"This function should be called only once for any given request, after "
"B<aio_error>(3) returns something other than B<EINPROGRESS>."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:57
+#: build/C/man3/aio_return.3:58
msgid ""
"If the asynchronous I/O operation has completed, this function returns the "
"value that would have been returned in case of a synchronous B<read>(2), "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:62
+#: build/C/man3/aio_return.3:63
msgid ""
"If the asynchronous I/O operation has not yet completed, the return value "
"and effect of B<aio_return>() are undefined."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:68
+#: build/C/man3/aio_return.3:69
msgid ""
"I<aiocbp> does not point at a control block for an asynchronous I/O request "
"of which the return status has not been retrieved yet."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:72
+#: build/C/man3/aio_return.3:73
msgid "B<aio_return>() is not implemented."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:76
+#: build/C/man3/aio_return.3:77
msgid "The B<aio_return>() function is available since glibc 2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_return.3:90
+#: build/C/man3/aio_return.3:91
msgid ""
"B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
"B<aio_suspend>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/aio_suspend.3:24
+#: build/C/man3/aio_suspend.3:25
#, no-wrap
msgid "AIO_SUSPEND"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:27
+#: build/C/man3/aio_suspend.3:28
msgid "aio_suspend - wait for asynchronous I/O operation or timeout"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:31 build/C/man3/lio_listio.3:29
+#: build/C/man3/aio_suspend.3:32 build/C/man3/lio_listio.3:30
#, no-wrap
msgid "B<#include E<lt>aio.hE<gt>>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:33
+#: build/C/man3/aio_suspend.3:34
#, no-wrap
msgid "B<int aio_suspend(const struct aiocb * const >I<aiocb_list>B<[],>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:35
+#: build/C/man3/aio_suspend.3:36
#, no-wrap
msgid ""
"B< int >I<nitems>B<, const struct timespec "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:37 build/C/man3/lio_listio.3:34
+#: build/C/man3/aio_suspend.3:38 build/C/man3/lio_listio.3:35
#, no-wrap
msgid "Link with I<-lrt>.\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:42
+#: build/C/man3/aio_suspend.3:43
msgid ""
"The B<aio_suspend>() function suspends the calling thread until one of the "
"following occurs:"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:46
+#: build/C/man3/aio_suspend.3:47
msgid ""
"One or more of the asynchronous I/O requests in the list I<aiocb_list> has "
"completed."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:48
+#: build/C/man3/aio_suspend.3:49
msgid "A signal is delivered."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:55
+#: build/C/man3/aio_suspend.3:56
msgid ""
"I<timeout> is not NULL and the specified time interval has passed. (For "
"details of the I<timespec> structure, see B<nanosleep>(2).)"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:73
+#: build/C/man3/aio_suspend.3:74
msgid ""
"The I<nitems> argument specifies the number of items in I<aiocb_list>. Each "
"item in the list pointed to by I<aiocb_list> must be either NULL (and then "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:79
+#: build/C/man3/aio_suspend.3:80
msgid ""
"If B<CLOCK_MONOTONIC> is supported, this clock is used to measure the "
"timeout interval (see B<clock_gettime>(3))."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:87
+#: build/C/man3/aio_suspend.3:88
msgid ""
"If this function returns after completion of one of the I/O requests "
"specified in I<aiocb_list>, 0 is returned. Otherwise, -1 is returned, and "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:92
+#: build/C/man3/aio_suspend.3:93
msgid "The call timed out before any of the indicated operations had completed."
msgstr ""
#. type: TP
-#: build/C/man3/aio_suspend.3:92 build/C/man2/io_getevents.2:46 build/C/man3/lio_listio.3:168
+#: build/C/man3/aio_suspend.3:93 build/C/man2/io_getevents.2:50 build/C/man3/lio_listio.3:169
#, no-wrap
msgid "B<EINTR>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:98
+#: build/C/man3/aio_suspend.3:99
msgid ""
"The call was ended by signal (possibly the completion signal of one of the "
"operations we were waiting for); see B<signal>(7)."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:102
-msgid "B<aio_suspend()> is not implemented."
+#: build/C/man3/aio_suspend.3:103
+msgid "B<aio_suspend>() is not implemented."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:106
+#: build/C/man3/aio_suspend.3:107
msgid "The B<aio_suspend>() function is available since glibc 2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:112
+#: build/C/man3/aio_suspend.3:113
msgid ""
"One can achieve polling by using a non-NULL I<timeout> that specifies a zero "
"time interval."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:118
+#: build/C/man3/aio_suspend.3:119
msgid ""
"If one or more of the asynchronous I/O operations specified in I<aiocb_list> "
"has already completed at the time of the call to B<aio_suspend>(), then the "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:128
+#: build/C/man3/aio_suspend.3:129
msgid ""
"To determine which I/O operations have completed after a successful return "
"from B<aio_suspend>(), use B<aio_error>(3) to scan the list of I<aiocb> "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_suspend.3:138
+#: build/C/man3/aio_suspend.3:139
msgid ""
"B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
"B<aio_return>(3), B<aio_write>(3), B<lio_listio>(3), B<aio>(7), B<time>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/aio_write.3:23
+#: build/C/man3/aio_write.3:24
#, no-wrap
msgid "AIO_WRITE"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:26
+#: build/C/man3/aio_write.3:27
msgid "aio_write - asynchronous write"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:30
+#: build/C/man3/aio_write.3:31
msgid "B<int aio_write(struct aiocb *>I<aiocbp>B<);>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:40
+#: build/C/man3/aio_write.3:41
msgid ""
"The B<aio_write>() function queues the I/O request described by the buffer "
-"pointed to by I<aiocb>. This function is the asynchronous analog of "
+"pointed to by I<aiocbp>. This function is the asynchronous analog of "
"B<write>(2). The arguments of the call"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:42
+#: build/C/man3/aio_write.3:43
#, no-wrap
msgid " write(fd, buf, count)\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:68
+#: build/C/man3/aio_write.3:69
msgid ""
"If B<O_APPEND> is not set, the data is written starting at the absolute file "
"offset I<aiocbp-E<gt>aio_offset>, regardless of the current file offset. If "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:81
+#: build/C/man3/aio_write.3:82
msgid ""
"The \"asynchronous\" means that this call returns as soon as the request has "
"been enqueued; the write may or may not have completed when the call "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:94
+#: build/C/man3/aio_write.3:95
msgid "No data is written to a regular file beyond its maximum offset."
msgstr ""
#. type: TP
-#: build/C/man3/aio_write.3:117
+#: build/C/man3/aio_write.3:118
#, no-wrap
msgid "B<EFBIG>"
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:121
+#: build/C/man3/aio_write.3:122
msgid ""
"The file is a regular file, we want to write at least one byte, but the "
"starting position is at or beyond the maximum offset for this file."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:128
+#: build/C/man3/aio_write.3:129
msgid "One or more of I<aio_offset>, I<aio_reqprio>, I<aio_nbytes> are invalid."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:132
+#: build/C/man3/aio_write.3:133
msgid "B<aio_write>() is not implemented."
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:136
+#: build/C/man3/aio_write.3:137
msgid "The B<aio_write>() function is available since glibc 2.1."
msgstr ""
#. or the control block of the operation
#. type: Plain text
-#: build/C/man3/aio_write.3:146
+#: build/C/man3/aio_write.3:147
msgid ""
"It is a good idea to zero out the control block before use. The control "
"block must not be changed while the write operation is in progress. The "
msgstr ""
#. type: Plain text
-#: build/C/man3/aio_write.3:159
+#: build/C/man3/aio_write.3:160
msgid ""
"B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_read>(3), "
"B<aio_return>(3), B<aio_suspend>(3), B<lio_listio>(3), B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man2/io_cancel.2:5
+#: build/C/man2/io_cancel.2:7
#, no-wrap
msgid "IO_CANCEL"
msgstr ""
+#. type: TH
+#: build/C/man2/io_cancel.2:7 build/C/man2/io_destroy.2:7 build/C/man2/io_setup.2:7 build/C/man2/io_submit.2:7
+#, no-wrap
+msgid "2012-07-13"
+msgstr ""
+
#. type: Plain text
-#: build/C/man2/io_cancel.2:8
+#: build/C/man2/io_cancel.2:10
msgid "io_cancel - cancel an outstanding asynchronous I/O operation"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:11 build/C/man2/io_destroy.2:12 build/C/man2/io_setup.2:11 build/C/man2/io_submit.2:11
+#: build/C/man2/io_cancel.2:13 build/C/man2/io_destroy.2:13 build/C/man2/io_setup.2:13 build/C/man2/io_submit.2:13
#, no-wrap
msgid "B<#include E<lt>linux/aio_abi.hE<gt>> /* Defines needed types */\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:14
+#: build/C/man2/io_cancel.2:16
#, no-wrap
msgid ""
"B<int io_cancel(aio_context_t >I<ctx_id>B<, struct iocb *>I<iocb>B<,>\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:28
+#: build/C/man2/io_cancel.2:20 build/C/man2/io_destroy.2:19 build/C/man2/io_getevents.2:22 build/C/man2/io_setup.2:19 build/C/man2/io_submit.2:20
+msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/io_cancel.2:33
msgid ""
"The B<io_cancel>() system call attempts to cancel an asynchronous I/O "
"operation previously submitted with B<io_submit>(2). The I<ctx_id> argument "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:33
+#: build/C/man2/io_cancel.2:38
msgid "On success, B<io_cancel>() returns 0. For the failure return, see NOTES."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:37
+#: build/C/man2/io_cancel.2:42
msgid "The I<iocb> specified was not canceled."
msgstr ""
#. type: TP
-#: build/C/man2/io_cancel.2:37 build/C/man2/io_destroy.2:32 build/C/man2/io_getevents.2:38 build/C/man2/io_setup.2:36 build/C/man2/io_submit.2:39
+#: build/C/man2/io_cancel.2:42 build/C/man2/io_destroy.2:36 build/C/man2/io_getevents.2:42 build/C/man2/io_setup.2:41 build/C/man2/io_submit.2:44
#, no-wrap
msgid "B<EFAULT>"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:40 build/C/man2/io_submit.2:42
+#: build/C/man2/io_cancel.2:45 build/C/man2/io_submit.2:47
msgid "One of the data structures points to invalid data."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:43 build/C/man2/io_destroy.2:38
+#: build/C/man2/io_cancel.2:48 build/C/man2/io_destroy.2:42
msgid "The AIO context specified by I<ctx_id> is invalid."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:47
+#: build/C/man2/io_cancel.2:52
msgid "B<io_cancel>() is not implemented on this architecture."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:50 build/C/man2/io_destroy.2:45 build/C/man2/io_getevents.2:57 build/C/man2/io_setup.2:54 build/C/man2/io_submit.2:58
+#: build/C/man2/io_cancel.2:55 build/C/man2/io_destroy.2:49 build/C/man2/io_getevents.2:61 build/C/man2/io_setup.2:59 build/C/man2/io_submit.2:63
msgid "The asynchronous I/O system calls first appeared in Linux 2.5."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_cancel.2:55
+#: build/C/man2/io_cancel.2:60
msgid ""
"B<io_cancel>() is Linux-specific and should not be used in programs that "
"are intended to be portable."
#. http://git.fedorahosted.org/git/?p=libaio.git
#. type: Plain text
-#: build/C/man2/io_cancel.2:64
+#: build/C/man2/io_cancel.2:69
msgid ""
"Glibc does not provide a wrapper function for this system call. You could "
"invoke it using B<syscall>(2). But instead, you probably want to use the "
#. But glibc is confused, since <libaio.h> uses 'io_context_t' to declare
#. the system call.
#. type: Plain text
-#: build/C/man2/io_cancel.2:85 build/C/man2/io_destroy.2:80 build/C/man2/io_getevents.2:92 build/C/man2/io_submit.2:93
+#: build/C/man2/io_cancel.2:90 build/C/man2/io_destroy.2:84 build/C/man2/io_getevents.2:96 build/C/man2/io_submit.2:98
msgid ""
"Note that the I<libaio> wrapper function uses a different type "
"(I<io_context_t>) for the I<ctx_id> argument. Note also that the I<libaio> "
#. .SH AUTHOR
#. Kent Yoder.
#. type: Plain text
-#: build/C/man2/io_cancel.2:93
+#: build/C/man2/io_cancel.2:98
msgid ""
"B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), "
"B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man2/io_destroy.2:6
+#: build/C/man2/io_destroy.2:7
#, no-wrap
msgid "IO_DESTROY"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_destroy.2:9
+#: build/C/man2/io_destroy.2:10
msgid "io_destroy - destroy an asynchronous I/O context"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_destroy.2:14
+#: build/C/man2/io_destroy.2:15
#, no-wrap
msgid "B<int io_destroy(aio_context_t >I<ctx_id>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_destroy.2:26
+#: build/C/man2/io_destroy.2:30
msgid ""
"The B<io_destroy>() system call removes the asynchronous I/O context "
"specified by I<ctx_id> from the list of I/O contexts and then destroys it. "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_destroy.2:31
+#: build/C/man2/io_destroy.2:35
msgid "On success, B<io_destroy>() returns 0. For the failure return, see NOTES."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_destroy.2:35
+#: build/C/man2/io_destroy.2:39
msgid "The context pointed to is invalid."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_destroy.2:42
+#: build/C/man2/io_destroy.2:46
msgid "B<io_destroy>() is not implemented on this architecture."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_destroy.2:50
+#: build/C/man2/io_destroy.2:54
msgid ""
"B<io_destroy>() is Linux-specific and should not be used in programs that "
"are intended to be portable."
#. http://git.fedorahosted.org/git/?p=libaio.git
#. type: Plain text
-#: build/C/man2/io_destroy.2:59
+#: build/C/man2/io_destroy.2:63
msgid ""
"Glibc does not provide a wrapper function for this system call. You could "
"invoke it using B<syscall>(2). But instead, you probably want to use the "
#. .SH AUTHOR
#. Kent Yoder.
#. type: Plain text
-#: build/C/man2/io_destroy.2:88
+#: build/C/man2/io_destroy.2:92
msgid ""
"B<io_cancel>(2), B<io_getevents>(2), B<io_setup>(2), B<io_submit>(2), "
"B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man2/io_getevents.2:5
+#: build/C/man2/io_getevents.2:7
#, no-wrap
msgid "IO_GETEVENTS"
msgstr ""
+#. type: TH
+#: build/C/man2/io_getevents.2:7
+#, no-wrap
+msgid "2012-11-11"
+msgstr ""
+
#. type: Plain text
-#: build/C/man2/io_getevents.2:8
+#: build/C/man2/io_getevents.2:10
msgid "io_getevents - read asynchronous I/O events from the completion queue"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:12
+#: build/C/man2/io_getevents.2:14
#, no-wrap
msgid ""
"B<#include E<lt>linux/aio_abi.hE<gt>> /* Defines needed types */\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:17
+#: build/C/man2/io_getevents.2:18
#, no-wrap
msgid ""
"B<int io_getevents(aio_context_t >I<ctx_id>B<, long >I<min_nr>B<, long "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:31
+#: build/C/man2/io_getevents.2:35
msgid ""
"The B<io_getevents>() system call attempts to read at least I<min_nr> "
"events and up to I<nr> events from the completion queue of the AIO context "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:37
+#: build/C/man2/io_getevents.2:41
msgid ""
"On success, B<io_getevents>() returns the number of events read: 0 if no "
"events are available, or less than I<min_nr> if the I<timeout> has elapsed. "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:41
+#: build/C/man2/io_getevents.2:45
msgid "Either I<events> or I<timeout> is an invalid pointer."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:46
+#: build/C/man2/io_getevents.2:50
msgid "I<ctx_id> is invalid. I<min_nr> is out of range or I<nr> is out of range."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:50
+#: build/C/man2/io_getevents.2:54
msgid "Interrupted by a signal handler; see B<signal>(7)."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:54
+#: build/C/man2/io_getevents.2:58
msgid "B<io_getevents>() is not implemented on this architecture."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_getevents.2:62
+#: build/C/man2/io_getevents.2:66
msgid ""
"B<io_getevents>() is Linux-specific and should not be used in programs that "
"are intended to be portable."
#. http://git.fedorahosted.org/git/?p=libaio.git
#. type: Plain text
-#: build/C/man2/io_getevents.2:71
+#: build/C/man2/io_getevents.2:75
msgid ""
"Glibc does not provide a wrapper function for this system call. You could "
"invoke it using B<syscall>(2). But instead, you probably want to use the "
"B<io_getevents>() wrapper function provided by I<libaio>."
msgstr ""
+#. type: SH
+#: build/C/man2/io_getevents.2:96
+#, no-wrap
+msgid "BUGS"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/io_getevents.2:101
+msgid ""
+"An invalid I<ctx_id> may cause a segmentation fault instead of genenerating "
+"the error B<EINVAL>."
+msgstr ""
+
#. .SH AUTHOR
#. Kent Yoder.
#. type: Plain text
-#: build/C/man2/io_getevents.2:102
+#: build/C/man2/io_getevents.2:111
msgid ""
"B<io_cancel>(2), B<io_destroy>(2), B<io_setup>(2), B<io_submit>(2), "
"B<aio>(7), B<time>(7)"
msgstr ""
#. type: TH
-#: build/C/man2/io_setup.2:5
+#: build/C/man2/io_setup.2:7
#, no-wrap
msgid "IO_SETUP"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:8
+#: build/C/man2/io_setup.2:10
msgid "io_setup - create an asynchronous I/O context"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:13
+#: build/C/man2/io_setup.2:15
#, no-wrap
msgid "B<int io_setup(unsigned >I<nr_events>B<, aio_context_t *>I<ctx_idp>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:27
+#: build/C/man2/io_setup.2:32
msgid ""
"The B<io_setup>() system call creates an asynchronous I/O context capable "
"of receiving at least I<nr_events>. The I<ctx_idp> argument must not point "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:32
+#: build/C/man2/io_setup.2:37
msgid "On success, B<io_setup>() returns 0. For the failure return, see NOTES."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:36
+#: build/C/man2/io_setup.2:41
msgid "The specified I<nr_events> exceeds the user's limit of available events."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:39
+#: build/C/man2/io_setup.2:44
msgid "An invalid pointer is passed for I<ctx_idp>."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:44
+#: build/C/man2/io_setup.2:49
msgid ""
"I<ctx_idp> is not initialized, or the specified I<nr_events> exceeds "
"internal limits. I<nr_events> should be greater than 0."
msgstr ""
#. type: TP
-#: build/C/man2/io_setup.2:44
+#: build/C/man2/io_setup.2:49
#, no-wrap
msgid "B<ENOMEM>"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:47
+#: build/C/man2/io_setup.2:52
msgid "Insufficient kernel resources are available."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:51
+#: build/C/man2/io_setup.2:56
msgid "B<io_setup>() is not implemented on this architecture."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_setup.2:59
+#: build/C/man2/io_setup.2:64
msgid ""
"B<io_setup>() is Linux-specific and should not be used in programs that are "
"intended to be portable."
#. http://git.fedorahosted.org/git/?p=libaio.git
#. type: Plain text
-#: build/C/man2/io_setup.2:68
+#: build/C/man2/io_setup.2:73
msgid ""
"Glibc does not provide a wrapper function for this system call. You could "
"invoke it using B<syscall>(2). But instead, you probably want to use the "
#. But glibc is confused, since <libaio.h> uses 'io_context_t' to declare
#. the system call.
#. type: Plain text
-#: build/C/man2/io_setup.2:89
+#: build/C/man2/io_setup.2:94
msgid ""
"Note that the I<libaio> wrapper function uses a different type "
"(I<io_context_t\\ *>) for the I<ctx_idp> argument. Note also that the "
#. .SH AUTHOR
#. Kent Yoder.
#. type: Plain text
-#: build/C/man2/io_setup.2:97
+#: build/C/man2/io_setup.2:102
msgid ""
"B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_submit>(2), "
"B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man2/io_submit.2:5
+#: build/C/man2/io_submit.2:7
#, no-wrap
msgid "IO_SUBMIT"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:8
+#: build/C/man2/io_submit.2:10
msgid "io_submit - submit asynchronous I/O blocks for processing"
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:14
+#: build/C/man2/io_submit.2:16
#, no-wrap
msgid ""
"B<int io_submit(aio_context_t >I<ctx_id>B<, long >I<nr>B<, struct iocb "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:26
+#: build/C/man2/io_submit.2:31
msgid ""
"The B<io_submit>() system call queues I<nr> I/O request blocks for "
"processing in the AIO context I<ctx_id>. The I<iocbpp> argument should be "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:32
+#: build/C/man2/io_submit.2:37
msgid ""
"On success, B<io_submit>() returns the number of I<iocb>s submitted (which "
"may be 0 if I<nr> is zero). For the failure return, see NOTES."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:36
+#: build/C/man2/io_submit.2:41
msgid "Insufficient resources are available to queue any I<iocb>s."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:39
+#: build/C/man2/io_submit.2:44
msgid "The file descriptor specified in the first I<iocb> is invalid."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:51
+#: build/C/man2/io_submit.2:56
msgid ""
"The AIO context specified by I<ctx_id> is invalid. I<nr> is less than 0. "
"The I<iocb> at I<*iocbpp[0]> is not properly initialized, or the operation "
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:55
+#: build/C/man2/io_submit.2:60
msgid "B<io_submit>() is not implemented on this architecture."
msgstr ""
#. type: Plain text
-#: build/C/man2/io_submit.2:63
+#: build/C/man2/io_submit.2:68
msgid ""
"B<io_submit>() is Linux-specific and should not be used in programs that "
"are intended to be portable."
#. http://git.fedorahosted.org/git/?p=libaio.git
#. type: Plain text
-#: build/C/man2/io_submit.2:72
+#: build/C/man2/io_submit.2:77
msgid ""
"Glibc does not provide a wrapper function for this system call. You could "
"invoke it using B<syscall>(2). But instead, you probably want to use the "
#. .SH AUTHOR
#. Kent Yoder.
#. type: Plain text
-#: build/C/man2/io_submit.2:101
+#: build/C/man2/io_submit.2:106
msgid ""
"B<io_cancel>(2), B<io_destroy>(2), B<io_getevents>(2), B<io_setup>(2), "
"B<aio>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/lio_listio.3:23
+#: build/C/man3/lio_listio.3:24
#, no-wrap
msgid "LIO_LISTIO"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:26
+#: build/C/man3/lio_listio.3:27
msgid "lio_listio - initiate a list of I/O requests"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:32
+#: build/C/man3/lio_listio.3:33
#, no-wrap
msgid ""
"B<int lio_listio(int >I<mode>B<, struct aiocb *const >I<aiocb_list>B<[],>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:40
+#: build/C/man3/lio_listio.3:41
msgid ""
"The B<lio_listio>() function initiates the list of I/O operations described "
"by the array I<aiocb_list>."
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:44
+#: build/C/man3/lio_listio.3:45
msgid "The I<mode> operation has one of the following values:"
msgstr ""
#. type: TP
-#: build/C/man3/lio_listio.3:44
+#: build/C/man3/lio_listio.3:45
#, no-wrap
msgid "B<LIO_WAIT>"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:50
+#: build/C/man3/lio_listio.3:51
msgid ""
"The call blocks until all operations are complete. The I<sevp> argument is "
"ignored."
msgstr ""
#. type: TP
-#: build/C/man3/lio_listio.3:50
+#: build/C/man3/lio_listio.3:51
#, no-wrap
msgid "B<LIO_NOWAIT>"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:62
+#: build/C/man3/lio_listio.3:63
msgid ""
"The I/O operations are queued for processing and the call returns "
"immediately. When all of the I/O operations complete, asynchronous "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:76
+#: build/C/man3/lio_listio.3:77
msgid ""
"The I<aiocb_list> argument is an array of pointers to I<aiocb> structures "
"that describe I/O operations. These operations are executed in an "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:82
+#: build/C/man3/lio_listio.3:83
msgid ""
"In each control block in I<aiocb_list>, the I<aio_lio_opcode> field "
"specifies the I/O operation to be initiated, as follows:"
msgstr ""
#. type: TP
-#: build/C/man3/lio_listio.3:82
+#: build/C/man3/lio_listio.3:83
#, no-wrap
msgid "B<LIO_READ>"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:88
+#: build/C/man3/lio_listio.3:89
msgid ""
"Initiate a read operation. The operation is queued as for a call to "
"B<aio_read>(3) specifying this control block."
msgstr ""
#. type: TP
-#: build/C/man3/lio_listio.3:88
+#: build/C/man3/lio_listio.3:89
#, no-wrap
msgid "B<LIO_WRITE>"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:94
+#: build/C/man3/lio_listio.3:95
msgid ""
"Initiate a write operation. The operation is queued as for a call to "
"B<aio_write>(3) specifying this control block."
msgstr ""
#. type: TP
-#: build/C/man3/lio_listio.3:94
+#: build/C/man3/lio_listio.3:95
#, no-wrap
msgid "B<LIO_NOP>"
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:97
+#: build/C/man3/lio_listio.3:98
msgid "Ignore this control block."
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:107
+#: build/C/man3/lio_listio.3:108
msgid ""
"The remaining fields in each control block have the same meanings as for "
"B<aio_read>(3) and B<aio_write>(3). The I<aio_sigevent> fields of each "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:117
+#: build/C/man3/lio_listio.3:118
msgid ""
"If I<mode> is B<LIO_NOWAIT>, B<lio_listio>() returns 0 if all I/O "
"operations are successfully queued. Otherwise, -1 is returned, and I<errno> "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:127
+#: build/C/man3/lio_listio.3:128
msgid ""
"If I<mode> is B<LIO_WAIT>, B<lio_listio>() returns 0 when all of the I/O "
"operations have completed successfully. Otherwise, -1 is returned, and "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:145
+#: build/C/man3/lio_listio.3:146
msgid ""
"The return status from B<lio_listio>() provides information only about the "
"call itself, not about the individual I/O operations. One or more of the "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:149
+#: build/C/man3/lio_listio.3:150
msgid "The B<lio_listio>() function may fail for the following reasons:"
msgstr ""
#. Doesn't happen in glibc(?)
#. type: Plain text
-#: build/C/man3/lio_listio.3:160
+#: build/C/man3/lio_listio.3:161
msgid ""
"The number of I/O operations specified by I<nitems> would cause the limit "
"B<AIO_MAX> to be exceeded."
#. Doesn't happen in glibc(?)
#. type: Plain text
-#: build/C/man3/lio_listio.3:168
+#: build/C/man3/lio_listio.3:169
msgid "I<mode> is invalid, or I<nitems> exceeds the limit B<AIO_LISTIO_MAX>."
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:177
+#: build/C/man3/lio_listio.3:178
msgid ""
"I<mode> was B<LIO_WAIT> and a signal was caught before all I/O operations "
"completed. (This may even be one of the signals used for asynchronous I/O "
msgstr ""
#. type: TP
-#: build/C/man3/lio_listio.3:177
+#: build/C/man3/lio_listio.3:178
#, no-wrap
msgid "B<EIO>"
msgstr ""
#. e.g., ioa_reqprio or aio_lio_opcode was invalid
#. type: Plain text
-#: build/C/man3/lio_listio.3:185
+#: build/C/man3/lio_listio.3:186
msgid ""
"One of more of the operations specified by I<aiocb_list> failed. The "
"application can check the status of each operation using B<aio_return>(3)."
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:200
+#: build/C/man3/lio_listio.3:201
msgid ""
"If B<lio_listio>() fails with the error B<EAGAIN>, B<EINTR>, or B<EIO>, "
"then some of the operations in I<aiocb_list> may have been initiated. If "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:204
+#: build/C/man3/lio_listio.3:205
msgid "The B<lio_listio>() function is available since glibc 2.1."
msgstr ""
#. or the control block of the operation
#. type: Plain text
-#: build/C/man3/lio_listio.3:214
+#: build/C/man3/lio_listio.3:215
msgid ""
"It is a good idea to zero out the control blocks before use. The control "
"blocks must not be changed while the I/O operations are in progress. The "
msgstr ""
#. type: Plain text
-#: build/C/man3/lio_listio.3:226
+#: build/C/man3/lio_listio.3:227
msgid ""
"B<aio_cancel>(3), B<aio_error>(3), B<aio_fsync>(3), B<aio_return>(3), "
"B<aio_suspend>(3), B<aio_write>(3), B<aio>(7)"