Consolidate bi_io_vec assignment for cloning in __bio_clone to keep any
further changes in one place.

Suggested-by: Christoph Hellwig <[email protected]>
Signed-off-by: Pavel Begunkov <[email protected]>
---
 block/bio.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/block/bio.c b/block/bio.c
index bfaede30a54f..57c127aee116 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -860,6 +860,7 @@ static int __bio_clone(struct bio *bio, struct bio 
*bio_src, gfp_t gfp)
        bio->bi_write_hint = bio_src->bi_write_hint;
        bio->bi_write_stream = bio_src->bi_write_stream;
        bio->bi_iter = bio_src->bi_iter;
+       bio->bi_io_vec = bio_src->bi_io_vec;
 
        if (bio->bi_bdev) {
                if (bio->bi_bdev == bio_src->bi_bdev &&
@@ -902,8 +903,6 @@ struct bio *bio_alloc_clone(struct block_device *bdev, 
struct bio *bio_src,
                bio_put(bio);
                return NULL;
        }
-       bio->bi_io_vec = bio_src->bi_io_vec;
-
        return bio;
 }
 EXPORT_SYMBOL(bio_alloc_clone);
@@ -923,7 +922,7 @@ int bio_init_clone(struct block_device *bdev, struct bio 
*bio,
 {
        int ret;
 
-       bio_init(bio, bdev, bio_src->bi_io_vec, 0, bio_src->bi_opf);
+       bio_init(bio, bdev, NULL, 0, bio_src->bi_opf);
        ret = __bio_clone(bio, bio_src, gfp);
        if (ret)
                bio_uninit(bio);
-- 
2.54.0


Reply via email to