io_uring: remove wait loop spurious wakeups
authorPavel Begunkov <asml.silence@gmail.com>
Mon, 7 Oct 2019 23:18:42 +0000 (02:18 +0300)
committerJens Axboe <axboe@kernel.dk>
Tue, 8 Oct 2019 03:16:24 +0000 (21:16 -0600)
commit6805b32ec2b0897eb180295385efe306e5ac3b3d
treeb7de652423b1ef3af835b1c538bbb3d17a2edb5b
parentb84477d3ebb96294f87dc3161e53fa8fe22d9bfd
io_uring: remove wait loop spurious wakeups

Any changes interesting to tasks waiting in io_cqring_wait() are
commited with io_cqring_ev_posted(). However, io_ring_drop_ctx_refs()
also tries to do that but with no reason, that means spurious wakeups
every io_free_req() and io_uring_enter().

Just use percpu_ref_put() instead.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c