The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH 6.12.y 1/3] block: Reorder the request allocation code in blk_mq_submit_bio()
@ 2026-08-12 13:54 Simon Liebold
  2026-08-12 13:54 ` [PATCH 6.12.y 2/3] blk-mq: pop cached request if it is usable Simon Liebold
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Simon Liebold @ 2026-08-12 13:54 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Bart Van Assche, Damien Le Moal, Christoph Hellwig,
	Chaitanya Kulkarni, Jens Axboe, Simon Liebold

From: Bart Van Assche <bvanassche@acm.org>

[ Upstream commit 44e41381591dc5b4ea67a9f170b4ec85c817586e ]

Help the CPU branch predictor in case of a cache hit by handling the cache
hit scenario first.

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Link: https://lore.kernel.org/r/20241218212246.1073149-2-bvanassche@acm.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Stable-dep-of: dc278e9bf2b9 ("blk-mq: pop cached request if it is usable")
Signed-off-by: Simon Liebold <simonlie@amazon.de>
---
 block/blk-mq.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/block/blk-mq.c b/block/blk-mq.c
index 5bfaa8e4b9cf6..c1dff0d9f9439 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -3121,12 +3121,12 @@ void blk_mq_submit_bio(struct bio *bio)
 	}
 
 new_request:
-	if (!rq) {
+	if (rq) {
+		blk_mq_use_cached_rq(rq, plug, bio);
+	} else {
 		rq = blk_mq_get_new_requests(q, plug, bio, nr_segs);
 		if (unlikely(!rq))
 			goto queue_exit;
-	} else {
-		blk_mq_use_cached_rq(rq, plug, bio);
 	}
 
 	trace_block_getrq(bio);

base-commit: 25c09b42358e73e1476e517b296edb6344f2e4bd
-- 
2.50.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-08-15  2:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-12 13:54 [PATCH 6.12.y 1/3] block: Reorder the request allocation code in blk_mq_submit_bio() Simon Liebold
2026-08-12 13:54 ` [PATCH 6.12.y 2/3] blk-mq: pop cached request if it is usable Simon Liebold
2026-08-12 13:54 ` [PATCH 6.12.y 3/3] blk-mq: reinsert cached request to the list Simon Liebold
2026-08-15  2:33 ` [PATCH 6.12.y 1/3] block: Reorder the request allocation code in blk_mq_submit_bio() Sasha Levin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox