在 2021/12/10 下午12:22, Jens Axboe 写道:
On 12/9/21 8:29 PM, Hao Xu wrote:
在 2021/12/10 上午12:16, Jens Axboe 写道:
If we successfully cancel a work item but that work item needs to be
processed through task_work, then we can be sleeping uninterruptibly
in io_uring_cancel_generic() and never process it. Hence we don't
make forward progress and we end up with an uninterruptible sleep
warning.
Add the waitqueue earlier to ensure that any wakeups from cancelations
are seen, and switch to using uninterruptible sleep so that postponed
^ typo
Not really a typo, but should be killed from v2 for sure. I'll do that.
Don't know why the ^ char doesn't align with 'uninterruptible' ... here
I mean 'uninterruptible' is a typo