History

io_uring: support for IO polling

Add support for a polled io_uring instance. When a read or write is submitted to a polled io_uring, the application must poll for completions on the CQ ring through io_uring_enter(2). Polled IO may not generate IRQ completions, hence they need to be actively found by the application itself. To use polling, io_uring_setup() must be used with the IORING_SETUP_IOPOLL flag being set. It is illegal to mix and match polled and non-polled IO on an io_uring.

Jens Axboe committed 7 years ago

Commit def596e1 parent c992fe22 files · +271 −9Browse files

Showing the changes to include/uapi/linux (1 of 2 files). Show all

Unified · Split

include/uapi/linux/io_uring.h+5−0
@@ -30,6 +30,11 @@ struct io_uring_sqe { · 29 unmodified lines
3030 __u64 __pad2[3];
3131 };
3232
33+/*
34+ * io_uring_setup() flags
35+ */
36+#define IORING_SETUP_IOPOLL (1U << 0) /* io_context is polled */
37+
3338 #define IORING_OP_NOP 0
3439 #define IORING_OP_READV 1
3540 #define IORING_OP_WRITEV 2

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t