Skip to content

Commit 44a84da

Browse files
Dylan Yudakenaxboe
authored andcommitted
io_uring: use call_rcu_hurry if signaling an eventfd
io_uring uses call_rcu in the case it needs to signal an eventfd as a result of an eventfd signal, since recursing eventfd signals are not allowed. This should be calling the new call_rcu_hurry API to not delay the signal. Signed-off-by: Dylan Yudaken <dylany@meta.com> Cc: Joel Fernandes (Google) <joel@joelfernandes.org> Cc: Paul E. McKenney <paulmck@kernel.org> Acked-by: Paul E. McKenney <paulmck@kernel.org> Reviewed-by: Joel Fernandes (Google) <joel@joelfernandes.org> Link: https://lore.kernel.org/r/20221215184138.795576-1-dylany@meta.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent a8cf95f commit 44a84da

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

io_uring/io_uring.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -538,7 +538,7 @@ static void io_eventfd_signal(struct io_ring_ctx *ctx)
538538
} else {
539539
atomic_inc(&ev_fd->refs);
540540
if (!atomic_fetch_or(BIT(IO_EVENTFD_OP_SIGNAL_BIT), &ev_fd->ops))
541-
call_rcu(&ev_fd->rcu, io_eventfd_ops);
541+
call_rcu_hurry(&ev_fd->rcu, io_eventfd_ops);
542542
else
543543
atomic_dec(&ev_fd->refs);
544544
}

0 commit comments

Comments
 (0)