Pavel Begunkov 6746ee4c3a io_uring/cmd: expose iowq to cmds
When an io_uring request needs blocking context we offload it to the
io_uring's thread pool called io-wq. We can get there off ->uring_cmd
by returning -EAGAIN, but there is no straightforward way of doing that
from an asynchronous callback. Add a helper that would transfer a
command to a blocking context.

Note, we do an extra hop via task_work before io_queue_iowq(), that's a
limitation of io_uring infra we have that can likely be lifted later
if that would ever become a problem.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/f735f807d7c8ba50c9452c69dfe5d3e9e535037b.1726072086.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2024-09-11 10:44:10 -06:00
..
2024-09-11 10:44:10 -06:00
2024-09-11 10:44:10 -06:00
2024-06-19 07:57:21 -06:00
2022-07-24 18:39:11 -06:00
2024-09-02 09:39:57 -06:00
2024-02-09 09:04:39 -07:00
2024-02-09 09:04:39 -07:00
2024-09-11 10:44:10 -06:00