diff options
author | James Rouzier <rouzier@gmail.com> | 2019-09-25 10:46:19 -0400 |
---|---|---|
committer | James Rouzier <rouzier@gmail.com> | 2019-09-25 20:11:50 -0400 |
commit | 46850c3a617e361c133c4da3d6e3069807ebe2b7 (patch) | |
tree | 0a09609779cdb12a526c36811dabff986621ffe1 /src | |
parent | 4e360f71131918c36774f51688e5c65dea8d43f2 (diff) | |
download | liburing-46850c3a617e361c133c4da3d6e3069807ebe2b7.tar.gz liburing-46850c3a617e361c133c4da3d6e3069807ebe2b7.tar.bz2 |
Add io_uring_cq_ready()
io_uring_cq_ready(), returns the number of completions that are ready.
test/cq-ready.c: tests io_uring_cq_ready
Signed-off-by: James Rouzier <rouzier@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/include/liburing.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/include/liburing.h b/src/include/liburing.h index cfce895..5de8aab 100644 --- a/src/include/liburing.h +++ b/src/include/liburing.h @@ -248,6 +248,11 @@ static inline unsigned io_uring_sq_space_left(struct io_uring *ring) return *ring->sq.kring_entries - (ring->sq.sqe_tail - ring->sq.sqe_head); } +static inline unsigned io_uring_cq_ready(struct io_uring *ring) +{ + return io_uring_smp_load_acquire(ring->cq.ktail) - *ring->cq.khead; +} + #ifdef __cplusplus } #endif |