Lines Matching refs:fs_info
44 void btrfs_bio_init(struct btrfs_bio *bbio, struct btrfs_fs_info *fs_info, in btrfs_bio_init() argument
48 bbio->fs_info = fs_info; in btrfs_bio_init()
63 struct btrfs_fs_info *fs_info, in btrfs_bio_alloc() argument
71 btrfs_bio_init(bbio, fs_info, end_io, private); in btrfs_bio_alloc()
75 static struct btrfs_bio *btrfs_split_bio(struct btrfs_fs_info *fs_info, in btrfs_split_bio() argument
88 btrfs_bio_init(bbio, fs_info, NULL, orig_bbio); in btrfs_split_bio()
172 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_end_repair_bio() local
189 btrfs_debug(fs_info, "no mirror left"); in btrfs_end_repair_bio()
200 btrfs_repair_io_failure(fs_info, btrfs_ino(inode), in btrfs_end_repair_bio()
201 repair_bbio->file_offset, fs_info->sectorsize, in btrfs_end_repair_bio()
224 struct btrfs_fs_info *fs_info = inode->root->fs_info; in repair_one_sector() local
225 const u32 sectorsize = fs_info->sectorsize; in repair_one_sector()
232 btrfs_debug(fs_info, "repair read error: read error at %llu", in repair_one_sector()
235 num_copies = btrfs_num_copies(fs_info, logical, sectorsize); in repair_one_sector()
237 btrfs_debug(fs_info, "no copy to repair from"); in repair_one_sector()
257 btrfs_bio_init(repair_bbio, fs_info, NULL, fbio); in repair_one_sector()
262 btrfs_debug(fs_info, "submitting repair read to mirror %d", mirror); in repair_one_sector()
270 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_check_read_bio() local
271 u32 sectorsize = fs_info->sectorsize; in btrfs_check_read_bio()
327 static struct workqueue_struct *btrfs_end_io_wq(struct btrfs_fs_info *fs_info, in btrfs_end_io_wq() argument
331 return fs_info->endio_meta_workers; in btrfs_end_io_wq()
332 return fs_info->endio_workers; in btrfs_end_io_wq()
350 struct btrfs_fs_info *fs_info = bbio->fs_info; in btrfs_simple_end_io() local
352 btrfs_bio_counter_dec(fs_info); in btrfs_simple_end_io()
359 queue_work(btrfs_end_io_wq(fs_info, bio), &bbio->end_io_work); in btrfs_simple_end_io()
372 btrfs_bio_counter_dec(bioc->fs_info); in btrfs_raid56_end_io()
388 btrfs_bio_counter_dec(bioc->fs_info); in btrfs_orig_write_end_io()
445 u64 zone_start = round_down(physical, dev->fs_info->zone_size); in btrfs_submit_dev_bio()
450 btrfs_debug_in_rcu(dev->fs_info, in btrfs_submit_dev_bio()
460 if (dev->fs_devices->collect_fs_stats && bio_op(bio) == REQ_OP_READ && dev->fs_info) in btrfs_submit_dev_bio()
461 percpu_counter_add(&dev->fs_info->stats_read_blocks, in btrfs_submit_dev_bio()
462 bio->bi_iter.bi_size >> dev->fs_info->sectorsize_bits); in btrfs_submit_dev_bio()
602 struct btrfs_fs_devices *fs_devices = bbio->fs_info->fs_devices; in should_async_write()
612 if (auto_csum_mode && test_bit(BTRFS_FS_CSUM_IMPL_FAST, &bbio->fs_info->flags)) in should_async_write()
623 if ((bbio->bio.bi_opf & REQ_META) && btrfs_is_zoned(bbio->fs_info)) in should_async_write()
638 struct btrfs_fs_info *fs_info = bbio->fs_info; in btrfs_wq_submit_bio() local
651 btrfs_queue_work(fs_info->workers, &async->work); in btrfs_wq_submit_bio()
660 map_length = min(map_length, bbio->fs_info->max_zone_append_size); in btrfs_append_map_length()
661 sector_offset = bio_split_rw_at(&bbio->bio, &bbio->fs_info->limits, in btrfs_append_map_length()
669 return ALIGN_DOWN(sector_offset << SECTOR_SHIFT, bbio->fs_info->sectorsize); in btrfs_append_map_length()
677 struct btrfs_fs_info *fs_info = bbio->fs_info; in btrfs_submit_chunk() local
693 btrfs_bio_counter_inc_blocked(fs_info); in btrfs_submit_chunk()
694 error = btrfs_map_block(fs_info, btrfs_op(bio), logical, &map_length, in btrfs_submit_chunk()
698 btrfs_bio_counter_dec(fs_info); in btrfs_submit_chunk()
709 split = btrfs_split_bio(fs_info, bbio, map_length); in btrfs_submit_chunk()
712 btrfs_bio_counter_dec(fs_info); in btrfs_submit_chunk()
752 !test_bit(BTRFS_FS_STATE_NO_DATA_CSUMS, &fs_info->fs_state) && in btrfs_submit_chunk()
762 (btrfs_is_zoned(fs_info) && inode && in btrfs_submit_chunk()
775 btrfs_bio_counter_dec(fs_info); in btrfs_submit_chunk()
813 int btrfs_repair_io_failure(struct btrfs_fs_info *fs_info, u64 ino, u64 start, in btrfs_repair_io_failure() argument
822 ASSERT(!(fs_info->sb->s_flags & SB_RDONLY)); in btrfs_repair_io_failure()
825 if (btrfs_repair_one_zone(fs_info, logical)) in btrfs_repair_io_failure()
833 btrfs_bio_counter_inc_blocked(fs_info); in btrfs_repair_io_failure()
834 ret = btrfs_map_repair_block(fs_info, &smap, logical, length, mirror_num); in btrfs_repair_io_failure()
855 btrfs_info_rl_in_rcu(fs_info, in btrfs_repair_io_failure()
864 btrfs_bio_counter_dec(fs_info); in btrfs_repair_io_failure()
875 struct btrfs_fs_info *fs_info = bbio->fs_info; in btrfs_submit_repair_write() local
881 ASSERT(fs_info); in btrfs_submit_repair_write()
886 btrfs_bio_counter_inc_blocked(fs_info); in btrfs_submit_repair_write()
887 ret = btrfs_map_repair_block(fs_info, &smap, logical, length, mirror_num); in btrfs_submit_repair_write()
892 ASSERT(smap.dev == fs_info->dev_replace.srcdev); in btrfs_submit_repair_write()
893 smap.dev = fs_info->dev_replace.tgtdev; in btrfs_submit_repair_write()
899 btrfs_bio_counter_dec(fs_info); in btrfs_submit_repair_write()