io_uring: complete all requests in task context
authorPavel Begunkov <asml.silence@gmail.com>
Wed, 7 Dec 2022 03:53:30 +0000 (03:53 +0000)
committerJens Axboe <axboe@kernel.dk>
Wed, 7 Dec 2022 13:47:13 +0000 (06:47 -0700)
commite6aeb2721d3bad8379c43644d0380908e93b0187
tree82f98f25d70cf4e3e8781fdfdc493d5810810cf2
parent1b346e4aa8e79227391ffd6b7c6ee5acf0fa8bfc
io_uring: complete all requests in task context

This patch adds ctx->task_complete flag. If set, we'll complete all
requests in the context of the original task. Note, this extends to
completion CQE posting only but not io_kiocb cleanup / free, e.g. io-wq
may free the requests in the free calllback. This flag will be used
later for optimisations purposes.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/21ece72953f76bb2e77659a72a14326227ab6460.1670384893.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/linux/io_uring.h
include/linux/io_uring_types.h
io_uring/io_uring.c