io_uring/rsrc: fix DEFER_TASKRUN rsrc quiesce
authorPavel Begunkov <asml.silence@gmail.com>
Thu, 13 Apr 2023 14:28:09 +0000 (15:28 +0100)
committerJens Axboe <axboe@kernel.dk>
Sat, 15 Apr 2023 20:44:57 +0000 (14:44 -0600)
commit7d481e0356334eb2de254414769b4bed4b2a8827
treee0320e74e123a0e8dff4306a78dcc5dac19de98c
parent4ea15b56f0810f0d8795d475db1bb74b3a7c1b2f
io_uring/rsrc: fix DEFER_TASKRUN rsrc quiesce

For io_rsrc_ref_quiesce() to progress it should execute all task_work
items, including deferred ones. However, currently nobody would wake us,
and so let's set ctx->cq_wait_nr, so io_req_local_work_add() would wake
us up.

Fixes: c0e0d6ba25f18 ("io_uring: add IORING_SETUP_DEFER_TASKRUN")
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/f1a90d1bc5ebf096475b018fed52e54f3b89d4af.1681395792.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/rsrc.c