|
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | SEE ALSO | COLOPHON |
|
|
|
io_uring_peek_cqe(3) liburing Manual io_uring_peek_cqe(3)
io_uring_peek_cqe - check if an io_uring completion event is
available
#include <liburing.h>
int io_uring_peek_cqe(struct io_uring *ring,
struct io_uring_cqe **cqe_ptr);
unsigned io_uring_peek_batch_cqe(struct io_uring *ring,
struct io_uring_cqe **cqe_ptrs,
unsigned count);
The io_uring_peek_cqe(3) function returns an IO completion from
the queue belonging to the ring param, if one is readily
available. On successful return, cqe_ptr param is filled with a
valid CQE entry.
This function does not enter the kernel to wait for an event, an
event is only returned if it's already available in the CQ ring.
The io_uring_peek_batch_cqe(3) function returns up to count
request completions in cqe_ptrs belonging to the ring param, if
they are readily available. It will not enter the kernel, unless
the CQ ring is in an overflow condition. Upon successful return,
cqe_ptrs are filled with the number of events indicated by the
return value.
On success io_uring_peek_cqe(3) returns 0 and the cqe_ptr
parameter is filled in. On success io_uring_peek_batch_cqe(3)
returns the number of completions filled in. On failure,
io_uring_peek_cqe(3) may return -EAGAIN.
io_uring_submit(3), io_uring_wait_cqes(3), io_uring_wait_cqe(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 2025-08-11. (At that time,
the date of the most recent commit that was found in the
repository was 2025-08-02.) 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.2 March 12, 2022 io_uring_peek_cqe(3)
Pages that refer to this page: io_uring_setup(2), io_uring_cq_advance(3), io_uring_cqe_seen(3), io_uring_peek_batch_cqe(3), io_uring_peek_cqe(3)