mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 21:21:41 +00:00
io_uring: mark the need to lock/unlock the ring as unlikely
Any of the fast paths will already have this locked, this helper only exists to deal with io-wq invoking request issue where we do not have the ctx->uring_lock held already. This means that any common or fast path will already have this locked, mark it as such. Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
95041b93e9
commit
bfe30bfde2
@ -208,7 +208,7 @@ static inline void io_ring_submit_unlock(struct io_ring_ctx *ctx,
|
||||
unsigned issue_flags)
|
||||
{
|
||||
lockdep_assert_held(&ctx->uring_lock);
|
||||
if (issue_flags & IO_URING_F_UNLOCKED)
|
||||
if (unlikely(issue_flags & IO_URING_F_UNLOCKED))
|
||||
mutex_unlock(&ctx->uring_lock);
|
||||
}
|
||||
|
||||
@ -221,7 +221,7 @@ static inline void io_ring_submit_lock(struct io_ring_ctx *ctx,
|
||||
* The only exception is when we've detached the request and issue it
|
||||
* from an async worker thread, grab the lock for that case.
|
||||
*/
|
||||
if (issue_flags & IO_URING_F_UNLOCKED)
|
||||
if (unlikely(issue_flags & IO_URING_F_UNLOCKED))
|
||||
mutex_lock(&ctx->uring_lock);
|
||||
lockdep_assert_held(&ctx->uring_lock);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user