diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
commit | fc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch) | |
tree | ce1e3bce06471410239a6f41282e328770aa404a /templates/man2/readv.2.pot | |
parent | Initial commit. (diff) | |
download | manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip |
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'templates/man2/readv.2.pot')
-rw-r--r-- | templates/man2/readv.2.pot | 798 |
1 files changed, 798 insertions, 0 deletions
diff --git a/templates/man2/readv.2.pot b/templates/man2/readv.2.pot new file mode 100644 index 00000000..f1e545e9 --- /dev/null +++ b/templates/man2/readv.2.pot @@ -0,0 +1,798 @@ +# SOME DESCRIPTIVE TITLE +# Copyright (C) YEAR Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2024-03-01 17:05+0100\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" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. type: TH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "readv" +msgstr "" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "2023-10-31" +msgstr "" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "Linux man-pages 6.06" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NAME" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"readv, writev, preadv, pwritev, preadv2, pwritev2 - read or write data into " +"multiple buffers" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "LIBRARY" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Standard C library (I<libc>, I<-lc>)" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SYNOPSIS" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<#include E<lt>sys/uio.hE<gt>>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<ssize_t readv(int >I<fd>B<, const struct iovec *>I<iov>B<, int >I<iovcnt>B<);>\n" +"B<ssize_t writev(int >I<fd>B<, const struct iovec *>I<iov>B<, int >I<iovcnt>B<);>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<ssize_t preadv(int >I<fd>B<, const struct iovec *>I<iov>B<, int >I<iovcnt>B<,>\n" +"B< off_t >I<offset>B<);>\n" +"B<ssize_t pwritev(int >I<fd>B<, const struct iovec *>I<iov>B<, int >I<iovcnt>B<,>\n" +"B< off_t >I<offset>B<);>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<ssize_t preadv2(int >I<fd>B<, const struct iovec *>I<iov>B<, int >I<iovcnt>B<,>\n" +"B< off_t >I<offset>B<, int >I<flags>B<);>\n" +"B<ssize_t pwritev2(int >I<fd>B<, const struct iovec *>I<iov>B<, int >I<iovcnt>B<,>\n" +"B< off_t >I<offset>B<, int >I<flags>B<);>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<preadv>(), B<pwritev>():" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +" Since glibc 2.19:\n" +" _DEFAULT_SOURCE\n" +" glibc 2.19 and earlier:\n" +" _BSD_SOURCE\n" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "DESCRIPTION" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The B<readv>() system call reads I<iovcnt> buffers from the file associated " +"with the file descriptor I<fd> into the buffers described by I<iov> " +"(\"scatter input\")." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The B<writev>() system call writes I<iovcnt> buffers of data described by " +"I<iov> to the file associated with the file descriptor I<fd> (\"gather " +"output\")." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The pointer I<iov> points to an array of I<iovec> structures, described in " +"B<iovec>(3type)." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The B<readv>() system call works just like B<read>(2) except that multiple " +"buffers are filled." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The B<writev>() system call works just like B<write>(2) except that " +"multiple buffers are written out." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Buffers are processed in array order. This means that B<readv>() " +"completely fills I<iov[0]> before proceeding to I<iov[1]>, and so on. (If " +"there is insufficient data, then not all buffers pointed to by I<iov> may be " +"filled.) Similarly, B<writev>() writes out the entire contents of " +"I<iov[0]> before proceeding to I<iov[1]>, and so on." +msgstr "" + +#. Regarding atomicity, see https://bugzilla.kernel.org/show_bug.cgi?id=10596 +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The data transfers performed by B<readv>() and B<writev>() are atomic: the " +"data written by B<writev>() is written as a single block that is not " +"intermingled with output from writes in other processes; analogously, " +"B<readv>() is guaranteed to read a contiguous block of data from the file, " +"regardless of read operations performed in other threads or processes that " +"have file descriptors referring to the same open file description (see " +"B<open>(2))." +msgstr "" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "preadv() and pwritev()" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The B<preadv>() system call combines the functionality of B<readv>() and " +"B<pread>(2). It performs the same task as B<readv>(), but adds a fourth " +"argument, I<offset>, which specifies the file offset at which the input " +"operation is to be performed." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The B<pwritev>() system call combines the functionality of B<writev>() and " +"B<pwrite>(2). It performs the same task as B<writev>(), but adds a fourth " +"argument, I<offset>, which specifies the file offset at which the output " +"operation is to be performed." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The file offset is not changed by these system calls. The file referred to " +"by I<fd> must be capable of seeking." +msgstr "" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "preadv2() and pwritev2()" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"These system calls are similar to B<preadv>() and B<pwritev>() calls, but " +"add a fifth argument, I<flags>, which modifies the behavior on a per-call " +"basis." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Unlike B<preadv>() and B<pwritev>(), if the I<offset> argument is -1, then " +"the current file offset is used and updated." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The I<flags> argument contains a bitwise OR of zero or more of the following " +"flags:" +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<RWF_DSYNC> (since Linux 4.7)" +msgstr "" + +#. commit e864f39569f4092c2b2bc72c773b6e486c7e3bd9 +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Provide a per-write equivalent of the B<O_DSYNC> B<open>(2) flag. This " +"flag is meaningful only for B<pwritev2>(), and its effect applies only to " +"the data range written by the system call." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<RWF_HIPRI> (since Linux 4.6)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"High priority read/write. Allows block-based filesystems to use polling of " +"the device, which provides lower latency, but may use additional resources. " +"(Currently, this feature is usable only on a file descriptor opened using " +"the B<O_DIRECT> flag.)" +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<RWF_SYNC> (since Linux 4.7)" +msgstr "" + +#. commit e864f39569f4092c2b2bc72c773b6e486c7e3bd9 +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Provide a per-write equivalent of the B<O_SYNC> B<open>(2) flag. This flag " +"is meaningful only for B<pwritev2>(), and its effect applies only to the " +"data range written by the system call." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<RWF_NOWAIT> (since Linux 4.14)" +msgstr "" + +#. commit 3239d834847627b6634a4139cf1dc58f6f137a46 +#. commit 91f9943e1c7b6638f27312d03fe71fcc67b23571 +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Do not wait for data which is not immediately available. If this flag is " +"specified, the B<preadv2>() system call will return instantly if it would " +"have to read data from the backing storage or wait for a lock. If some data " +"was successfully read, it will return the number of bytes read. If no bytes " +"were read, it will return -1 and set I<errno> to B<EAGAIN> (but see " +"B<BUGS>). Currently, this flag is meaningful only for B<preadv2>()." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<RWF_APPEND> (since Linux 4.16)" +msgstr "" + +#. commit e1fc742e14e01d84d9693c4aca4ab23da65811fb +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Provide a per-write equivalent of the B<O_APPEND> B<open>(2) flag. This " +"flag is meaningful only for B<pwritev2>(), and its effect applies only to " +"the data range written by the system call. The I<offset> argument does not " +"affect the write operation; the data is always appended to the end of the " +"file. However, if the I<offset> argument is -1, the current file offset is " +"updated." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "RETURN VALUE" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"On success, B<readv>(), B<preadv>(), and B<preadv2>() return the number of " +"bytes read; B<writev>(), B<pwritev>(), and B<pwritev2>() return the number " +"of bytes written." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Note that it is not an error for a successful call to transfer fewer bytes " +"than requested (see B<read>(2) and B<write>(2))." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "On error, -1 is returned, and I<errno> is set to indicate the error." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "ERRORS" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The errors are as given for B<read>(2) and B<write>(2). Furthermore, " +"B<preadv>(), B<preadv2>(), B<pwritev>(), and B<pwritev2>() can also fail " +"for the same reasons as B<lseek>(2). Additionally, the following errors are " +"defined:" +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EINVAL>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "The sum of the I<iov_len> values overflows an I<ssize_t> value." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The vector count, I<iovcnt>, is less than zero or greater than the permitted " +"maximum." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EOPNOTSUPP>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "An unknown flag is specified in I<flags>." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "VERSIONS" +msgstr "" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "C library/kernel differences" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The raw B<preadv>() and B<pwritev>() system calls have call signatures " +"that differ slightly from that of the corresponding GNU C library wrapper " +"functions shown in the SYNOPSIS. The final argument, I<offset>, is unpacked " +"by the wrapper functions into two arguments in the system calls:" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "B< unsigned long >I<pos_l>B<, unsigned long >I<pos>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"These arguments contain, respectively, the low order and high order 32 bits " +"of I<offset>." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "STANDARDS" +msgstr "" + +#. type: TP +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<readv>()" +msgstr "" + +#. type: TQ +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<writev>()" +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "POSIX.1-2008." +msgstr "" + +#. type: TP +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<preadv>()" +msgstr "" + +#. type: TQ +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<pwritev>()" +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "BSD." +msgstr "" + +#. type: TP +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<preadv2>()" +msgstr "" + +#. type: TQ +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<pwritev2>()" +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "Linux." +msgstr "" + +#. type: SH +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "HISTORY" +msgstr "" + +#. Linux libc5 used \fIsize_t\fP as the type of the \fIiovcnt\fP argument, +#. and \fIint\fP as the return type. +#. The readv/writev system calls were buggy before Linux 1.3.40. +#. (Says release.libc.) +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "POSIX.1-2001, 4.4BSD (first appeared in 4.2BSD)." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<preadv>(), B<pwritev>(): Linux 2.6.30, glibc 2.10." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<preadv2>(), B<pwritev2>(): Linux 4.6, glibc 2.26." +msgstr "" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Historical C library/kernel differences" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"To deal with the fact that B<IOV_MAX> was so low on early versions of Linux, " +"the glibc wrapper functions for B<readv>() and B<writev>() did some extra " +"work if they detected that the underlying kernel system call failed because " +"this limit was exceeded. In the case of B<readv>(), the wrapper function " +"allocated a temporary buffer large enough for all of the items specified by " +"I<iov>, passed that buffer in a call to B<read>(2), copied data from the " +"buffer to the locations specified by the I<iov_base> fields of the elements " +"of I<iov>, and then freed the buffer. The wrapper function for B<writev>() " +"performed the analogous task using a temporary buffer and a call to " +"B<write>(2)." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The need for this extra effort in the glibc wrapper functions went away with " +"Linux 2.2 and later. However, glibc continued to provide this behavior " +"until glibc 2.10. Starting with glibc 2.9, the wrapper functions provide " +"this behavior only if the library detects that the system is running a Linux " +"kernel older than Linux 2.6.18 (an arbitrarily selected kernel version). " +"And since glibc 2.20 (which requires a minimum of Linux 2.6.32), the glibc " +"wrapper functions always just directly invoke the system calls." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NOTES" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"POSIX.1 allows an implementation to place a limit on the number of items " +"that can be passed in I<iov>. An implementation can advertise its limit by " +"defining B<IOV_MAX> in I<E<lt>limits.hE<gt>> or at run time via the return " +"value from I<sysconf(_SC_IOV_MAX)>. On modern Linux systems, the limit is " +"1024. Back in Linux 2.0 days, this limit was 16." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "BUGS" +msgstr "" + +#. See +#. <https://lore.kernel.org/linux-fsdevel/fea8b16d-5a69-40f9-b123-e84dcd6e8f2e@www.fastmail.com/T/#u> +#. The bug was introduced in +#. efa8480a831 fs: RWF_NOWAIT should imply IOCB_NOIO +#. and fixed in +#. 06c0444290 mm/filemap.c: generic_file_buffered_read() now uses find_get_pages_contig +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Linux 5.9 and Linux 5.10 have a bug where B<preadv2>() with the " +"B<RWF_NOWAIT> flag may return 0 even when not at end of file." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "EXAMPLES" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "The following code sample demonstrates the use of B<writev>():" +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid "" +"char *str0 = \"hello \";\n" +"char *str1 = \"world\\en\";\n" +"ssize_t nwritten;\n" +"struct iovec iov[2];\n" +"\\&\n" +"iov[0].iov_base = str0;\n" +"iov[0].iov_len = strlen(str0);\n" +"iov[1].iov_base = str1;\n" +"iov[1].iov_len = strlen(str1);\n" +"\\&\n" +"nwritten = writev(STDOUT_FILENO, iov, 2);\n" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SEE ALSO" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<pread>(2), B<read>(2), B<write>(2)" +msgstr "" + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "2023-02-05" +msgstr "" + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "Linux man-pages 6.03" +msgstr "" + +#. type: Plain text +#: debian-bookworm +msgid "" +"B<preadv>() and B<pwritev>() first appeared in Linux 2.6.30; library " +"support was added in glibc 2.10." +msgstr "" + +#. type: Plain text +#: debian-bookworm +msgid "" +"B<preadv2>() and B<pwritev2>() first appeared in Linux 4.6. Library " +"support was added in glibc 2.26." +msgstr "" + +#. Linux libc5 used \fIsize_t\fP as the type of the \fIiovcnt\fP argument, +#. and \fIint\fP as the return type. +#. The readv/writev system calls were buggy before Linux 1.3.40. +#. (Says release.libc.) +#. type: Plain text +#: debian-bookworm +msgid "" +"B<readv>(), B<writev>(): POSIX.1-2001, POSIX.1-2008, 4.4BSD (these system " +"calls first appeared in 4.2BSD)." +msgstr "" + +#. type: Plain text +#: debian-bookworm +msgid "" +"B<preadv>(), B<pwritev>(): nonstandard, but present also on the modern BSDs." +msgstr "" + +#. type: Plain text +#: debian-bookworm +msgid "B<preadv2>(), B<pwritev2>(): nonstandard Linux extension." +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"char *str0 = \"hello \";\n" +"char *str1 = \"world\\en\";\n" +"ssize_t nwritten;\n" +"struct iovec iov[2];\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"iov[0].iov_base = str0;\n" +"iov[0].iov_len = strlen(str0);\n" +"iov[1].iov_base = str1;\n" +"iov[1].iov_len = strlen(str1);\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "nwritten = writev(STDOUT_FILENO, iov, 2);\n" +msgstr "" + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "2023-05-03" +msgstr "" + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "Linux man-pages 6.05.01" +msgstr "" + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "2023-03-30" +msgstr "" + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "Linux man-pages 6.04" +msgstr "" |