io_uring: always progress task_work on task cancel
Might happen that __io_uring_cancel_task_requests() cancels nothing but there are task_works pending. We need to always run them. Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
Родитель
446bc1c207
Коммит
55583d72e2
|
@ -8801,9 +8801,9 @@ static void __io_uring_cancel_task_requests(struct io_ring_ctx *ctx,
|
|||
|
||||
ret |= io_poll_remove_all(ctx, task, NULL);
|
||||
ret |= io_kill_timeouts(ctx, task, NULL);
|
||||
ret |= io_run_task_work();
|
||||
if (!ret)
|
||||
break;
|
||||
io_run_task_work();
|
||||
cond_resched();
|
||||
}
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче