summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2019-11-06 11:34:18 -0700
committerJens Axboe <axboe@kernel.dk>2019-11-06 15:15:38 -0700
commit570d79ab6485cb94aad931553d95bab7f8d19d11 (patch)
tree3df6ffcc58ccd7bcaa2993d8f31f07ff730005d6 /src
parentba97eaf8f9ef2030d581be10df9d875dbfadc91d (diff)
downloadliburing-cqring-nodrop.tar.gz
liburing-cqring-nodrop.tar.bz2
Add test case for IORING_SETUP_CQ_NODROPcqring-nodrop
Tests overflows without CQ_NODROP, and correct behavior on a ring setup with CQ_NODROP. The latter backlogs events that otherwise would have been dropped, and returns -EBUSY to an application trying to submit new IO with a backlog pending. Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'src')
-rw-r--r--src/include/liburing/io_uring.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/include/liburing/io_uring.h b/src/include/liburing/io_uring.h
index 6877cf8..7ae91dc 100644
--- a/src/include/liburing/io_uring.h
+++ b/src/include/liburing/io_uring.h
@@ -56,6 +56,7 @@ struct io_uring_sqe {
#define IORING_SETUP_SQPOLL (1U << 1) /* SQ poll thread */
#define IORING_SETUP_SQ_AFF (1U << 2) /* sq_thread_cpu is valid */
#define IORING_SETUP_CQSIZE (1U << 3) /* app defines CQ size */
+#define IORING_SETUP_CQ_NODROP (1U << 4) /* no CQ drops */
#define IORING_OP_NOP 0
#define IORING_OP_READV 1