]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
io_uring: add REQ_F_IOPOLL
authorCaleb Sander Mateos <csander@purestorage.com>
Mon, 2 Mar 2026 17:29:10 +0000 (10:29 -0700)
committerJens Axboe <axboe@kernel.dk>
Mon, 16 Mar 2026 22:14:14 +0000 (16:14 -0600)
commit9165dc4fa969b64c2d4396ee4e1546a719978dd1
tree129febfee217f0f4143307a0611c8c2ccef2409d
parent8c557449199e8267bc969ae7e1d70b343b6a646d
io_uring: add REQ_F_IOPOLL

A subsequent commit will allow uring_cmds to files that don't implement
->uring_cmd_iopoll() to be issued to IORING_SETUP_IOPOLL io_urings. This
means the ctx's IORING_SETUP_IOPOLL flag isn't sufficient to determine
whether a given request needs to be iopolled.

Introduce a request flag REQ_F_IOPOLL set in ->issue() if a request
needs to be iopolled to completion. Set the flag in io_rw_init_file()
and io_uring_cmd() for requests issued to IORING_SETUP_IOPOLL ctxs. Use
the request flag instead of IORING_SETUP_IOPOLL in places dealing with a
specific request.

A future possibility would be to add an option to enable/disable iopoll
in the io_uring SQE instead of determining it from IORING_SETUP_IOPOLL.

Signed-off-by: Caleb Sander Mateos <csander@purestorage.com>
Reviewed-by: Kanchan Joshi <joshi.k@samsung.com>
Reviewed-by: Anuj Gupta <anuj20.g@samsung.com>
Link: https://patch.msgid.link/20260302172914.2488599-2-csander@purestorage.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/linux/io_uring_types.h
io_uring/io_uring.c
io_uring/rw.c
io_uring/uring_cmd.c