]> www.infradead.org Git - nvme.git/commitdiff
block: remove blk_rq_bio_prep
authorChristoph Hellwig <hch@lst.de>
Fri, 3 Jan 2025 07:33:58 +0000 (08:33 +0100)
committerJens Axboe <axboe@kernel.dk>
Sat, 4 Jan 2025 22:27:35 +0000 (15:27 -0700)
There is not real point in a helper just to assign three values to four
fields, especially when the surrounding code is working on the
neighbor fields directly.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Link: https://lore.kernel.org/r/20250103073417.459715-3-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-map.c
block/blk-mq.c
include/linux/blk-mq.h

index 67a2da3b7ed97f8ea1dfa0f3111bf1482afb6761..d2f22744b3d11903f4a8dd438815e3a5b5d4332e 100644 (file)
@@ -490,17 +490,19 @@ int blk_rq_append_bio(struct request *rq, struct bio *bio)
                return ret;
        }
 
-       if (!rq->bio) {
-               blk_rq_bio_prep(rq, bio, nr_segs);
-       } else {
+       if (rq->bio) {
                if (!ll_back_merge_fn(rq, bio, nr_segs))
                        return -EINVAL;
                rq->biotail->bi_next = bio;
                rq->biotail = bio;
-               rq->__data_len += (bio)->bi_iter.bi_size;
+               rq->__data_len += bio->bi_iter.bi_size;
                bio_crypt_free_ctx(bio);
+               return 0;
        }
 
+       rq->nr_phys_segments = nr_segs;
+       rq->bio = rq->biotail = bio;
+       rq->__data_len = bio->bi_iter.bi_size;
        return 0;
 }
 EXPORT_SYMBOL(blk_rq_append_bio);
index fca2ec64a06b3bb920927e0e3bb7d60df0439c72..17f10683d640f78b1d32eaf3c4d8a9146472b870 100644 (file)
@@ -2658,8 +2658,10 @@ static void blk_mq_bio_to_request(struct request *rq, struct bio *bio,
        if (bio->bi_opf & REQ_RAHEAD)
                rq->cmd_flags |= REQ_FAILFAST_MASK;
 
+       rq->bio = rq->biotail = bio;
        rq->__sector = bio->bi_iter.bi_sector;
-       blk_rq_bio_prep(rq, bio, nr_segs);
+       rq->__data_len = bio->bi_iter.bi_size;
+       rq->nr_phys_segments = nr_segs;
        if (bio_integrity(bio))
                rq->nr_integrity_segments = blk_rq_count_integrity_sg(rq->q,
                                                                      bio);
index 7f6c482ebf54d0330eedbbba0a22a6e54e8d97d1..6340293511c9997075b6c03ca42d389952488f77 100644 (file)
@@ -978,14 +978,6 @@ static inline void blk_mq_cleanup_rq(struct request *rq)
                rq->q->mq_ops->cleanup_rq(rq);
 }
 
-static inline void blk_rq_bio_prep(struct request *rq, struct bio *bio,
-               unsigned int nr_segs)
-{
-       rq->nr_phys_segments = nr_segs;
-       rq->__data_len = bio->bi_iter.bi_size;
-       rq->bio = rq->biotail = bio;
-}
-
 void blk_mq_hctx_set_fq_lock_class(struct blk_mq_hw_ctx *hctx,
                struct lock_class_key *key);