mbox series

[for-next,v2,0/6] poll cleanups and optimisations

Message ID cover.1655990418.git.asml.silence@gmail.com (mailing list archive)
Headers show
Series poll cleanups and optimisations | expand

Message

Pavel Begunkov June 23, 2022, 1:24 p.m. UTC
1-5 are clean ups, can be considered separately.

6 optimises the final atomic_dec() in __io_arm_poll_handler(). Jens
measured almost the same patch imrpoving some of the tests (netbench?)
by ~1-1.5%.

v2: fix inverted EPOLLET check

Pavel Begunkov (6):
  io_uring: clean poll ->private flagging
  io_uring: remove events caching atavisms
  io_uring: add a helper for apoll alloc
  io_uring: change arm poll return values
  io_uring: refactor poll arm error handling
  io_uring: optimise submission side poll_refs

 io_uring/poll.c | 213 ++++++++++++++++++++++++++++++++----------------
 1 file changed, 142 insertions(+), 71 deletions(-)

Comments

Jens Axboe June 23, 2022, 1:47 p.m. UTC | #1
On 6/23/22 7:24 AM, Pavel Begunkov wrote:
> 1-5 are clean ups, can be considered separately.
> 
> 6 optimises the final atomic_dec() in __io_arm_poll_handler(). Jens
> measured almost the same patch imrpoving some of the tests (netbench?)
> by ~1-1.5%.
> 
> v2: fix inverted EPOLLET check

This passes tests, and I really like the cleanups before the actual
change. Thanks!
Jens Axboe June 23, 2022, 1:59 p.m. UTC | #2
On Thu, 23 Jun 2022 14:24:43 +0100, Pavel Begunkov wrote:
> 1-5 are clean ups, can be considered separately.
> 
> 6 optimises the final atomic_dec() in __io_arm_poll_handler(). Jens
> measured almost the same patch imrpoving some of the tests (netbench?)
> by ~1-1.5%.
> 
> v2: fix inverted EPOLLET check
> 
> [...]

Applied, thanks!

[1/6] io_uring: clean poll ->private flagging
      commit: ca8aab2d93e54d0bfdc64fbfa7c37240a203b10a
[2/6] io_uring: remove events caching atavisms
      commit: 9d58ea28872333759105106ed61c425297a6161d
[3/6] io_uring: add a helper for apoll alloc
      commit: 2ab0dcbeb5ac1ac3293cff63588fc942374575f2
[4/6] io_uring: change arm poll return values
      commit: ee97dcc84c31a7613c6fe1325cb1fa4d5a6ff7a9
[5/6] io_uring: refactor poll arm error handling
      commit: d62352aaf4e0edf33afcf4dfb5ad60fe323153fd
[6/6] io_uring: optimise submission side poll_refs
      commit: eb4301033a2ce2a234f2e36d59b6ee761d5dd76b

Best regards,