[PATCH v2 0/8] add persistent submission state

From: Pavel Begunkov
Date: Sat Jan 25 2020 - 14:54:35 EST


Apart from unrelated first patch, this persues two goals:

1. start preparing io_uring to move resources handling into
opcode specific functions, and thus for splice(2)

2. make the first step towards some long-standing optimisation ideas

Basically, it makes struct io_submit_state embedded into ctx, so
easily accessible and persistent, and then plays a bit around that.

v2: rebase

Pavel Begunkov (8):
io_uring: leave a comment for drain_next
io_uring: always pass non-null io_submit_state
io_uring: place io_submit_state into ctx
io_uring: move ring_fd into io_submit_state
io_uring: move cur_mm into io_submit_state
io_uring: move *link into io_submit_state
io_uring: persistent req bulk allocation cache
io_uring: optimise req bulk allocation cache

fs/io_uring.c | 219 +++++++++++++++++++++++++++-----------------------
1 file changed, 120 insertions(+), 99 deletions(-)

--
2.24.0