diff --git a/fs/btrfs/bio.c b/fs/btrfs/bio.c index de8634cf7bd8a77511ec891446822ef880325e03..1de40e064170250ebdf49d6c72965ff5a0ed6e06 100644 --- a/fs/btrfs/bio.c +++ b/fs/btrfs/bio.c @@ -155,7 +155,7 @@ static void btrfs_end_repair_bio(struct btrfs_bio *repair_bbio, goto done; } - btrfs_submit_bio(fs_info, &repair_bbio->bio, mirror); + btrfs_submit_bio(&repair_bbio->bio, mirror); return; } @@ -223,7 +223,7 @@ static struct btrfs_failed_bio *repair_one_sector(struct btrfs_bio *failed_bbio, mirror = next_repair_mirror(fbio, failed_bbio->mirror_num); btrfs_debug(fs_info, "submitting repair read to mirror %d", mirror); - btrfs_submit_bio(fs_info, repair_bio, mirror); + btrfs_submit_bio(repair_bio, mirror); return fbio; } @@ -600,10 +600,10 @@ static bool btrfs_wq_submit_bio(struct btrfs_bio *bbio, return true; } -static bool btrfs_submit_chunk(struct btrfs_fs_info *fs_info, struct bio *bio, - int mirror_num) +static bool btrfs_submit_chunk(struct bio *bio, int mirror_num) { struct btrfs_bio *bbio = btrfs_bio(bio); + struct btrfs_fs_info *fs_info = bbio->inode->root->fs_info; struct btrfs_bio *orig_bbio = bbio; u64 logical = bio->bi_iter.bi_sector << 9; u64 length = bio->bi_iter.bi_size; @@ -676,9 +676,9 @@ static bool btrfs_submit_chunk(struct btrfs_fs_info *fs_info, struct bio *bio, return true; } -void btrfs_submit_bio(struct btrfs_fs_info *fs_info, struct bio *bio, int mirror_num) +void btrfs_submit_bio(struct bio *bio, int mirror_num) { - while (!btrfs_submit_chunk(fs_info, bio, mirror_num)) + while (!btrfs_submit_chunk(bio, mirror_num)) ; } diff --git a/fs/btrfs/bio.h b/fs/btrfs/bio.h index a043c2ced5bd0a91d3d28560446c518bfbb1b7fa..873ff85817f0b2e8f556e47419aad4ee3aeed11a 100644 --- a/fs/btrfs/bio.h +++ b/fs/btrfs/bio.h @@ -88,8 +88,7 @@ static inline void btrfs_bio_end_io(struct btrfs_bio *bbio, blk_status_t status) /* Bio only refers to one ordered extent. */ #define REQ_BTRFS_ONE_ORDERED REQ_DRV -void btrfs_submit_bio(struct btrfs_fs_info *fs_info, struct bio *bio, - int mirror_num); +void btrfs_submit_bio(struct bio *bio, int mirror_num); int btrfs_repair_io_failure(struct btrfs_fs_info *fs_info, u64 ino, u64 start, u64 length, u64 logical, struct page *page, unsigned int pg_offset, int mirror_num); diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index d7e767e0162543e599cd04d329266ed482a8ced9..556ceed54d08c149a09a4c73f9ec1216336ab611 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c @@ -402,7 +402,7 @@ blk_status_t btrfs_submit_compressed_write(struct btrfs_inode *inode, u64 start, if (submit) { ASSERT(bio->bi_iter.bi_size); - btrfs_submit_bio(fs_info, bio, 0); + btrfs_submit_bio(bio, 0); bio = NULL; } cond_resched(); @@ -698,7 +698,7 @@ void btrfs_submit_compressed_read(struct inode *inode, struct bio *bio, btrfs_bio(comp_bio)->file_offset = file_offset; ASSERT(comp_bio->bi_iter.bi_size); - btrfs_submit_bio(fs_info, comp_bio, mirror_num); + btrfs_submit_bio(comp_bio, mirror_num); return; fail: diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 2ae329b5ce98049d817deb7e4fa3d9c9c9748462..a84b662fdd220d79df68840d85486125caac91de 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -702,7 +702,7 @@ int btrfs_validate_metadata_buffer(struct btrfs_bio *bbio, void btrfs_submit_metadata_bio(struct btrfs_inode *inode, struct bio *bio, int mirror_num) { bio->bi_opf |= REQ_META; - btrfs_submit_bio(inode->root->fs_info, bio, mirror_num); + btrfs_submit_bio(bio, mirror_num); } #ifdef CONFIG_MIGRATION diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index be122e4d4952a681fad74513ead4c7a794dc46d0..bd83633f8ad228a03cb1a150a861d8e23d6ce7cd 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -2697,14 +2697,12 @@ blk_status_t btrfs_extract_ordered_extent(struct btrfs_bio *bbio) void btrfs_submit_data_write_bio(struct btrfs_inode *inode, struct bio *bio, int mirror_num) { - btrfs_submit_bio(inode->root->fs_info, bio, mirror_num); + btrfs_submit_bio(bio, mirror_num); } void btrfs_submit_data_read_bio(struct btrfs_inode *inode, struct bio *bio, int mirror_num, enum btrfs_compression_type compress_type) { - struct btrfs_fs_info *fs_info = inode->root->fs_info; - if (compress_type != BTRFS_COMPRESS_NONE) { /* * btrfs_submit_compressed_read will handle completing the bio @@ -2714,7 +2712,7 @@ void btrfs_submit_data_read_bio(struct btrfs_inode *inode, struct bio *bio, return; } - btrfs_submit_bio(fs_info, bio, mirror_num); + btrfs_submit_bio(bio, mirror_num); } /* @@ -7795,7 +7793,7 @@ static void btrfs_dio_submit_io(const struct iomap_iter *iter, struct bio *bio, dip->bytes = bio->bi_iter.bi_size; dio_data->submitted += bio->bi_iter.bi_size; - btrfs_submit_bio(btrfs_sb(iter->inode->i_sb), bio, 0); + btrfs_submit_bio(bio, 0); } static const struct iomap_ops btrfs_dio_iomap_ops = { @@ -9960,7 +9958,6 @@ int btrfs_encoded_read_regular_fill_pages(struct btrfs_inode *inode, u64 file_offset, u64 disk_bytenr, u64 disk_io_size, struct page **pages) { - struct btrfs_fs_info *fs_info = inode->root->fs_info; struct btrfs_encoded_read_private priv = { .inode = inode, .file_offset = file_offset, @@ -9990,7 +9987,7 @@ int btrfs_encoded_read_regular_fill_pages(struct btrfs_inode *inode, if (!bytes || bio_add_page(bio, pages[i], bytes, 0) < bytes) { atomic_inc(&priv.pending); - btrfs_submit_bio(fs_info, bio, 0); + btrfs_submit_bio(bio, 0); bio = NULL; continue; }