block: convert to bio_first_bvec_all & bio_first_page_all
This patch converts to bio_first_bvec_all() & bio_first_page_all() for retrieving the 1st bvec/page, and prepares for supporting multipage bvec. Signed-off-by: Ming Lei <ming.lei@redhat.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
@@ -211,7 +211,7 @@ static void write_bdev_super_endio(struct bio *bio)
|
||||
|
||||
static void __write_super(struct cache_sb *sb, struct bio *bio)
|
||||
{
|
||||
struct cache_sb *out = page_address(bio->bi_io_vec[0].bv_page);
|
||||
struct cache_sb *out = page_address(bio_first_page_all(bio));
|
||||
unsigned i;
|
||||
|
||||
bio->bi_iter.bi_sector = SB_SECTOR;
|
||||
@@ -1166,7 +1166,7 @@ static void register_bdev(struct cache_sb *sb, struct page *sb_page,
|
||||
dc->bdev->bd_holder = dc;
|
||||
|
||||
bio_init(&dc->sb_bio, dc->sb_bio.bi_inline_vecs, 1);
|
||||
dc->sb_bio.bi_io_vec[0].bv_page = sb_page;
|
||||
bio_first_bvec_all(&dc->sb_bio)->bv_page = sb_page;
|
||||
get_page(sb_page);
|
||||
|
||||
if (cached_dev_init(dc, sb->block_size << 9))
|
||||
@@ -1810,7 +1810,7 @@ void bch_cache_release(struct kobject *kobj)
|
||||
free_fifo(&ca->free[i]);
|
||||
|
||||
if (ca->sb_bio.bi_inline_vecs[0].bv_page)
|
||||
put_page(ca->sb_bio.bi_io_vec[0].bv_page);
|
||||
put_page(bio_first_page_all(&ca->sb_bio));
|
||||
|
||||
if (!IS_ERR_OR_NULL(ca->bdev))
|
||||
blkdev_put(ca->bdev, FMODE_READ|FMODE_WRITE|FMODE_EXCL);
|
||||
@@ -1864,7 +1864,7 @@ static int register_cache(struct cache_sb *sb, struct page *sb_page,
|
||||
ca->bdev->bd_holder = ca;
|
||||
|
||||
bio_init(&ca->sb_bio, ca->sb_bio.bi_inline_vecs, 1);
|
||||
ca->sb_bio.bi_io_vec[0].bv_page = sb_page;
|
||||
bio_first_bvec_all(&ca->sb_bio)->bv_page = sb_page;
|
||||
get_page(sb_page);
|
||||
|
||||
if (blk_queue_discard(bdev_get_queue(ca->bdev)))
|
||||
|
Reference in New Issue
Block a user