From: Ming Lei <ming.lei@redhat.com>
Date: Wed, 16 Feb 2022 12:45:07 +0800
Subject: [PATCH] block: move submit_bio_checks() into submit_bio_noacct
Git-commit: a650628bde77f6ac5b1d532092346feff7b58c52
Patch-mainline: v5.18-rc1
References: jsc#PED-1183
It is more clean & readable to check bio when starting to submit it,
instead of just before calling ->submit_bio() or blk_mq_submit_bio().
Also it provides us chance to optimize bio submission without checking
bio.
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Link: https://lore.kernel.org/r/20220216044514.2903784-2-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Acked-by: Hannes Reinecke <hare@suse.com>
---
block/blk-core.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/block/blk-core.c b/block/blk-core.c
index 5a4a59041629..d4a023667ac1 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -797,9 +797,6 @@ static void __submit_bio(struct bio *bio)
{
struct gendisk *disk = bio->bi_bdev->bd_disk;
- if (unlikely(!submit_bio_checks(bio)))
- return;
-
if (!disk->fops->submit_bio)
blk_mq_submit_bio(bio);
else
@@ -893,6 +890,9 @@ static void __submit_bio_noacct_mq(struct bio *bio)
*/
void submit_bio_noacct(struct bio *bio)
{
+ if (unlikely(!submit_bio_checks(bio)))
+ return;
+
/*
* We only want one ->submit_bio to be active at a time, else stack
* usage with stacked devices could be a problem. Use current->bio_list
--
2.35.3