]> git.itanic.dy.fi Git - linux-stable/commit
io_uring: fix poll_remove stalled req completion
authorPavel Begunkov <asml.silence@gmail.com>
Fri, 15 Mar 2024 15:29:51 +0000 (15:29 +0000)
committerJens Axboe <axboe@kernel.dk>
Fri, 15 Mar 2024 15:36:56 +0000 (09:36 -0600)
commit5e3afe580a9f5ca173a6bd55ffe10948796ef7e5
treec2457b02ff8a1661c132d5ed50b34d158cac6ef9
parent67d1189d1095d471ed7fa426c7e384a7140a5dd7
io_uring: fix poll_remove stalled req completion

Taking the ctx lock is not enough to use the deferred request completion
infrastructure, it'll get queued into the list but no one would expect
it there, so it will sit there until next io_submit_flush_completions().
It's hard to care about the cancellation path, so complete it via tw.

Fixes: ef7dfac51d8ed ("io_uring/poll: serialize poll linked timer start with poll removal")
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/c446740bc16858f8a2a8dcdce899812f21d15f23.1710514702.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/poll.c