]> git.ipfire.org Git - thirdparty/linux.git/commit
io_uring: defer linked-timeout chain splice out of hrtimer context
authorJens Axboe <axboe@kernel.dk>
Mon, 11 May 2026 16:58:50 +0000 (10:58 -0600)
committerJens Axboe <axboe@kernel.dk>
Mon, 11 May 2026 17:14:34 +0000 (11:14 -0600)
commit49ae66eb8c27375075ffa308cfd4bf25af335d41
treeb97e9df83716b76c2ab0883d3b11aa63213c68c0
parent20c39819a27646573dfa0ac0d01c38895298a6f6
io_uring: defer linked-timeout chain splice out of hrtimer context

io_link_timeout_fn() is the hrtimer callback that fires when a linked
timeout expires. It currently calls io_remove_next_linked(prev) under
ctx->timeout_lock to splice the timeout request out of the link chain.
This is the only chain-mutation site that runs without ctx->uring_lock,
because hrtimer callbacks cannot take a mutex. Defer the splicing until
the task_work callback.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/timeout.c