Re: [PATCH for-next 0/7] reworking io_uring's poll and internal poll

Hao Xu
2021-12-17T15:02:06Z

在 2021/12/16 上午6:08, Pavel Begunkov 写道:
> That's mostly a bug fixing set, some of the problems are listed in 5/7.
> The main part is 5/7, which is bulky but at this point it's hard (if
> possible) to do anything without breaking a dozen of things on the
> way, so I consider it necessary evil.
> It also addresses one of two problems brought up by Eric Biggers
> for aio, specifically poll rewait. There is no poll-free support yet.
>
> As a side effect it also changes performance characteristics, adding
> extra atomics but removing io_kiocb referencing, improving rewait, etc.
> There are also drafts on optimising locking needed for hashing, those
> will go later.
Great, seems now we can have per node bit lock for hash list.
>
> Performance measurements is a TODO, but the main goal lies in
> correctness and maintainability.
>
> Pavel Begunkov (7):
> io_uring: remove double poll on poll update
> io_uring: refactor poll update
> io_uring: move common poll bits
> io_uring: kill poll linking optimisation
> io_uring: poll rework
> io_uring: single shot poll removal optimisation
> io_uring: use completion batching for poll rem/upd
>
> fs/io_uring.c | 649 ++++++++++++++++++++++----------------------------
> 1 file changed, 287 insertions(+), 362 deletions(-)
>