Messages in this thread | | | From | Pavel Begunkov <> | Subject | [PATCH 0/4] io-wq/io_uring locking optimisation | Date | Wed, 4 Mar 2020 16:14:08 +0300 |
| |
[1-3] are shedding excessive locking of @wqe's and @worker's spinlocks from io_worker_handle_work().
[4] removes an extra pair of refcount get/put by making former io_put_work() to own the submission reference. It also changes io-wq get/put API and renames io_put_work() into io_free_work() to reflect it.
Pavel Begunkov (4): io-wq: shuffle io_worker_handle_work() code io-wq: optimise locking in io_worker_handle_work() io-wq: optimise out *next_work() double lock io_uring/io-wq: forward submission ref to async
fs/io-wq.c | 148 ++++++++++++++++++++++++++------------------------ fs/io-wq.h | 6 +- fs/io_uring.c | 31 ++++------- 3 files changed, 90 insertions(+), 95 deletions(-)
-- 2.24.0
| |