]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Revert "io_uring: grab RCU read lock marking task run"
authorJens Axboe <axboe@kernel.dk>
Thu, 9 Jul 2026 17:43:07 +0000 (11:43 -0600)
committerJens Axboe <axboe@kernel.dk>
Thu, 9 Jul 2026 17:43:07 +0000 (11:43 -0600)
This reverts commit ed64f5c546b3d5e3a4840f6c055448ce90edf56c.

Since commit:

648790e09527 ("io_uring: restore RCU read section in io_req_local_work_add()")

io_ctx_mark_taskrun() is only ever called with the RCU read lock
already held, like previously. Hence's there's no need for this commit
anymore, which grabbed the RCU read lock inside io_ctx_mark_taskrun().

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

index 4f7a0d1079a42902ad31902324f45505791d6280..e6ee15571e85c41c5eb2bc1b4a004305ed0a449c 100644 (file)
@@ -139,11 +139,11 @@ void tctx_task_work(struct callback_head *cb)
  */
 static void io_ctx_mark_taskrun(struct io_ring_ctx *ctx)
 {
+       lockdep_assert_in_rcu_read_lock();
+
        if (ctx->flags & IORING_SETUP_TASKRUN_FLAG) {
-               struct io_rings *rings;
+               struct io_rings *rings = rcu_dereference(ctx->rings_rcu);
 
-               guard(rcu)();
-               rings = rcu_dereference(ctx->rings_rcu);
                atomic_or(IORING_SQ_TASKRUN, &rings->sq_flags);
        }
 }