Provided by: liburing-dev_2.9-1_amd64 bug

NAME

       io_uring_peek_cqe - check if an io_uring completion event is available

SYNOPSIS

       #include <liburing.h>

       int io_uring_peek_cqe(struct io_uring *ring,
                             struct io_uring_cqe **cqe_ptr);

       int io_uring_peek_batch_cqe(struct io_uring *ring,
                                   struct io_uring_cqe **cqe_ptrs,
                                   unsigned count);

DESCRIPTION

       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.

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,  they  may  return
       -EAGAIN.

SEE ALSO

       io_uring_submit(3), io_uring_wait_cqes(3), io_uring_wait_cqe(3)

liburing-2.2                                     March 12, 2022                             io_uring_peek_cqe(3)