Skip to content

Commit

Permalink
io_uring: inline __io_cq_unlock
Browse files Browse the repository at this point in the history
__io_cq_unlock is not very helpful, and users should be calling flush
variants anyway. Open code the function.

Signed-off-by: Pavel Begunkov <[email protected]>
Link: https://lore.kernel.org/r/d875c4cfb69f38ccecb58a57111446c77a614caa.1687518903.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <[email protected]>
  • Loading branch information
isilence authored and axboe committed Jun 23, 2023
1 parent 55b6a69 commit ff12617
Showing 1 changed file with 4 additions and 8 deletions.
12 changes: 4 additions & 8 deletions io_uring/io_uring.c
Original file line number Diff line number Diff line change
Expand Up @@ -631,12 +631,6 @@ static inline void __io_cq_lock(struct io_ring_ctx *ctx)
spin_lock(&ctx->completion_lock);
}

static inline void __io_cq_unlock(struct io_ring_ctx *ctx)
{
if (!ctx->task_complete)
spin_unlock(&ctx->completion_lock);
}

static inline void io_cq_lock(struct io_ring_ctx *ctx)
__acquires(ctx->completion_lock)
{
Expand All @@ -647,7 +641,9 @@ static inline void io_cq_lock(struct io_ring_ctx *ctx)
static inline void __io_cq_unlock_post(struct io_ring_ctx *ctx)
{
io_commit_cqring(ctx);
__io_cq_unlock(ctx);
if (!ctx->task_complete)
spin_unlock(&ctx->completion_lock);

io_commit_cqring_flush(ctx);
io_cqring_wake(ctx);
}
Expand All @@ -664,7 +660,7 @@ static void __io_cq_unlock_post_flush(struct io_ring_ctx *ctx)
*/
io_commit_cqring_flush(ctx);
} else {
__io_cq_unlock(ctx);
spin_unlock(&ctx->completion_lock);
io_commit_cqring_flush(ctx);
io_cqring_wake(ctx);
}
Expand Down

0 comments on commit ff12617

Please sign in to comment.