diff options
| author | Pavel Begunkov <asml.silence@gmail.com> | 2026-08-01 16:46:17 +0100 |
|---|---|---|
| committer | Jens Axboe <axboe@kernel.dk> | 2026-08-15 17:09:32 -0600 |
| commit | e228404b05c8293f6a1286856e49ba3e55da1933 (patch) | |
| tree | 4c5b434027e3a213fa347ebd1579d76d81a6010c /block | |
| parent | 2cd9e14abece86d790c2117276ff49173b735b61 (diff) | |
| download | linux-next-e228404b05c8293f6a1286856e49ba3e55da1933.tar.gz linux-next-e228404b05c8293f6a1286856e49ba3e55da1933.zip | |
block: move bvec init into __bio_clone
Consolidate bi_io_vec assignment for cloning in __bio_clone to keep any
further changes in one place.
Suggested-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://patch.msgid.link/6ecfe8f9b1c6bfb8665fba7daf55d9ad7a8a3243.1785596451.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block')
| -rw-r--r-- | block/bio.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/block/bio.c b/block/bio.c index 4074a0496b93..00f99d03ac91 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); |
