|
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | NOTES | SEE ALSO | COLOPHON |
|
|
|
io_uring_pr...ritev_fixed(3) liburing Manual io_uring_pr...ritev_fixed(3)
io_uring_prep_writev_fixed - prepare a vectored write using fixed
buffers
#include <liburing.h>
void io_uring_prep_writev_fixed(struct io_uring_sqe *sqe,
int fd,
const struct iovec *iovecs,
unsigned nr_vecs,
__u64 offset,
int flags,
int buf_index);
The io_uring_prep_writev_fixed(3) function prepares a vectored
write request using fixed (registered) buffers. The submission
queue entry sqe is setup to use the file descriptor fd to start
writing nr_vecs iovecs from the file position offset.
The iovecs argument points to an array of iovec structures
describing the write buffers. All buffers must be part of the
registered buffer set at index buf_index, previously registered
with io_uring_register_buffers(3).
The flags argument can contain any per-request flags, such as
RWF_APPEND or other flags supported by pwritev2(2).
Using fixed buffers avoids the overhead of mapping buffers for
each I/O operation, improving performance for applications that
reuse the same buffers.
None
The CQE res field will contain the result of the operation, the
number of bytes written on success. On error, a negative errno
value is returned.
Despite accepting an array of iovec's with a size_t number of
bytes each, this function can transfer at most INT_MAX bytes per
call (the maximum for the underlying syscall interface).
io_uring_get_sqe(3), io_uring_submit(3), io_uring_prep_writev(3),
io_uring_prep_writev2(3), io_uring_prep_write_fixed(3),
io_uring_prep_readv_fixed(3), io_uring_register_buffers(3)
This page is part of the liburing (A library for io_uring)
project. Information about the project can be found at
⟨https://github.com/axboe/liburing⟩. If you have a bug report for
this manual page, send it to io-uring@vger.kernel.org. This page
was obtained from the project's upstream Git repository
⟨https://github.com/axboe/liburing⟩ on 2026-05-24. (At that time,
the date of the most recent commit that was found in the
repository was 2026-05-18.) If you discover any rendering
problems in this HTML version of the page, or you believe there is
a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
man-pages@man7.org
liburing-2.10 January 18, 2025io_uring_pr...ritev_fixed(3)
Pages that refer to this page: io_uring_prep_readv_fixed(3), io_uring_prep_writev_fixed(3), io_uring_registered_buffers(7)