OSDN Git Service

fs: convert to bio_last_bvec_all()
authorMing Lei <ming.lei@redhat.com>
Mon, 18 Dec 2017 12:22:05 +0000 (20:22 +0800)
committerJens Axboe <axboe@kernel.dk>
Sat, 6 Jan 2018 16:18:00 +0000 (09:18 -0700)
This patch converts 3 users to bio_last_bvec_all(), so that we can go
ahead and convert to multipage bvec.

Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/btrfs/compression.c
fs/btrfs/extent_io.c
fs/buffer.c

index 38a6b09..75610d2 100644 (file)
@@ -411,7 +411,7 @@ blk_status_t btrfs_submit_compressed_write(struct inode *inode, u64 start,
 
 static u64 bio_end_offset(struct bio *bio)
 {
-       struct bio_vec *last = &bio->bi_io_vec[bio->bi_vcnt - 1];
+       struct bio_vec *last = bio_last_bvec_all(bio);
 
        return page_offset(last->bv_page) + last->bv_len + last->bv_offset;
 }
index 012d638..69cd63d 100644 (file)
@@ -2724,7 +2724,7 @@ static int __must_check submit_one_bio(struct bio *bio, int mirror_num,
                                       unsigned long bio_flags)
 {
        blk_status_t ret = 0;
-       struct bio_vec *bvec = bio->bi_io_vec + bio->bi_vcnt - 1;
+       struct bio_vec *bvec = bio_last_bvec_all(bio);
        struct page *page = bvec->bv_page;
        struct extent_io_tree *tree = bio->bi_private;
        u64 start;
index 0736a6a..8b26295 100644 (file)
@@ -3014,7 +3014,7 @@ static void end_bio_bh_io_sync(struct bio *bio)
 void guard_bio_eod(int op, struct bio *bio)
 {
        sector_t maxsector;
-       struct bio_vec *bvec = &bio->bi_io_vec[bio->bi_vcnt - 1];
+       struct bio_vec *bvec = bio_last_bvec_all(bio);
        unsigned truncated_bytes;
        struct hd_struct *part;