提交 81381053 编写于 作者: C Christoph Hellwig 提交者: David Sterba

btrfs: use bi_size

Instead of using bi_vcnt to calculate it.
Signed-off-by: NChristoph Hellwig <hch@lst.de>
Reviewed-by: NOmar Sandoval <osandov@fb.com>
Signed-off-by: NDavid Sterba <dsterba@suse.com>
上级 6cd7ce49
...@@ -562,7 +562,6 @@ static noinline int add_ra_bio_pages(struct inode *inode, ...@@ -562,7 +562,6 @@ static noinline int add_ra_bio_pages(struct inode *inode,
* *
* bio->bi_iter.bi_sector points to the compressed extent on disk * bio->bi_iter.bi_sector points to the compressed extent on disk
* bio->bi_io_vec points to all of the inode pages * bio->bi_io_vec points to all of the inode pages
* bio->bi_vcnt is a count of pages
* *
* After the compressed pages are read, we copy the bytes into the * After the compressed pages are read, we copy the bytes into the
* bio we were passed and then call the bio end_io calls * bio we were passed and then call the bio end_io calls
...@@ -574,7 +573,6 @@ int btrfs_submit_compressed_read(struct inode *inode, struct bio *bio, ...@@ -574,7 +573,6 @@ int btrfs_submit_compressed_read(struct inode *inode, struct bio *bio,
struct extent_map_tree *em_tree; struct extent_map_tree *em_tree;
struct compressed_bio *cb; struct compressed_bio *cb;
struct btrfs_root *root = BTRFS_I(inode)->root; struct btrfs_root *root = BTRFS_I(inode)->root;
unsigned long uncompressed_len = bio->bi_vcnt * PAGE_SIZE;
unsigned long compressed_len; unsigned long compressed_len;
unsigned long nr_pages; unsigned long nr_pages;
unsigned long pg_index; unsigned long pg_index;
...@@ -619,7 +617,7 @@ int btrfs_submit_compressed_read(struct inode *inode, struct bio *bio, ...@@ -619,7 +617,7 @@ int btrfs_submit_compressed_read(struct inode *inode, struct bio *bio,
free_extent_map(em); free_extent_map(em);
em = NULL; em = NULL;
cb->len = uncompressed_len; cb->len = bio->bi_iter.bi_size;
cb->compressed_len = compressed_len; cb->compressed_len = compressed_len;
cb->compress_type = extent_compress_type(bio_flags); cb->compress_type = extent_compress_type(bio_flags);
cb->orig_bio = bio; cb->orig_bio = bio;
...@@ -647,8 +645,7 @@ int btrfs_submit_compressed_read(struct inode *inode, struct bio *bio, ...@@ -647,8 +645,7 @@ int btrfs_submit_compressed_read(struct inode *inode, struct bio *bio,
add_ra_bio_pages(inode, em_start + em_len, cb); add_ra_bio_pages(inode, em_start + em_len, cb);
/* include any pages we added in add_ra-bio_pages */ /* include any pages we added in add_ra-bio_pages */
uncompressed_len = bio->bi_vcnt * PAGE_SIZE; cb->len = bio->bi_iter.bi_size;
cb->len = uncompressed_len;
comp_bio = compressed_bio_alloc(bdev, cur_disk_byte, GFP_NOFS); comp_bio = compressed_bio_alloc(bdev, cur_disk_byte, GFP_NOFS);
if (!comp_bio) if (!comp_bio)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册