| .\" Copyright (C) 2022 Stefan Roesch <shr@fb.com> |
| .\" |
| .\" SPDX-License-Identifier: LGPL-2.0-or-later |
| .\" |
| .TH io_uring_cq_advance 3 "January 25, 2022" "liburing-2.1" "liburing Manual" |
| .SH NAME |
| io_uring_cq_advance \- mark one or more io_uring completion events as consumed |
| .SH SYNOPSIS |
| .nf |
| .B #include <liburing.h> |
| .PP |
| .BI "void io_uring_cq_advance(struct io_uring *" ring "," |
| .BI " unsigned " nr ");" |
| .fi |
| .SH DESCRIPTION |
| .PP |
| The |
| .BR io_uring_cq_advance (3) |
| function marks |
| .I nr |
| IO completions belonging to the |
| .I ring |
| param as consumed. |
| |
| After the caller has submitted a request with |
| .BR io_uring_submit (3), |
| the application can retrieve the completion with |
| .BR io_uring_wait_cqe (3), |
| .BR io_uring_peek_cqe (3), |
| or any of the other CQE retrieval helpers, and mark it as consumed with |
| .BR io_uring_cqe_seen (3). |
| |
| The function |
| .BR io_uring_cqe_seen (3) |
| calls the function |
| .BR io_uring_cq_advance (3). |
| |
| Completions must be marked as seen, so their slot can get reused. Failure to do |
| so will result in the same completion being returned on the next invocation. |
| |
| .SH RETURN VALUE |
| None |
| .SH SEE ALSO |
| .BR io_uring_submit (3), |
| .BR io_uring_wait_cqe (3), |
| .BR io_uring_peek_cqe (3), |
| .BR io_uring_wait_cqes (3), |
| .BR io_uring_wait_cqe_timeout (3), |
| .BR io_uring_cqe_seen (3) |