aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2024-02-25 16:01:03 -0700
committerJens Axboe <axboe@kernel.dk>2024-02-25 16:01:03 -0700
commit41c8d9aa3dfc37d5430f7dd26c77454dc456f501 (patch)
tree3d9907287a01b2095dd6805bf3846961b785246b
parent295cef3eb2847f564a467f9d1b21d192f3a15b13 (diff)
downloadliburing-41c8d9aa3dfc37d5430f7dd26c77454dc456f501.tar.gz
man/io_uring_setup: mention that the submit on overflow depends on kernel
Fixes: https://github.com/axboe/liburing/issues/1063 Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r--man/io_uring_setup.210
1 files changed, 6 insertions, 4 deletions
diff --git a/man/io_uring_setup.2 b/man/io_uring_setup.2
index 82119fd8..c86f2e73 100644
--- a/man/io_uring_setup.2
+++ b/man/io_uring_setup.2
@@ -350,10 +350,12 @@ calls down from three to two. Available since kernel 5.4.
.TP
.B IORING_FEAT_NODROP
If this flag is set, io_uring supports almost never dropping completion events.
-If a completion event occurs and the CQ ring is full, the kernel stores
-the event internally until such a time that the CQ ring has room for more
-entries. If this overflow condition is entered, attempting to submit more
-IO will fail with the
+A dropped event can only occur if the kernel runs out of memory, in which case
+you have worse problems than a lost event. Your application and others will
+likely get OOM killed anyway. If a completion event occurs and the CQ ring is
+full, the kernel stores the event internally until such a time that the CQ ring
+has room for more entries. In earlier kernels, if this overflow condition is
+entered, attempting to submit more IO would fail with the
.B -EBUSY
error value, if it can't flush the overflown events to the CQ ring. If this
happens, the application must reap events from the CQ ring and attempt the