Lines Matching refs:bbio
59 struct btrfs_bio *bbio; member
262 (page->recover->bbio->map_type & BTRFS_BLOCK_GROUP_RAID56_MASK); in scrub_is_page_on_raid56()
808 btrfs_put_bbio(recover->bbio); in scrub_put_recover()
1034 int max_allowed = r->bbio->num_stripes - in scrub_handle_errored_block()
1035 r->bbio->num_tgtdevs; in scrub_handle_errored_block()
1225 static inline int scrub_nr_raid_mirrors(struct btrfs_bio *bbio) in scrub_nr_raid_mirrors() argument
1227 if (bbio->map_type & BTRFS_BLOCK_GROUP_RAID5) in scrub_nr_raid_mirrors()
1229 else if (bbio->map_type & BTRFS_BLOCK_GROUP_RAID6) in scrub_nr_raid_mirrors()
1232 return (int)bbio->num_stripes; in scrub_nr_raid_mirrors()
1276 struct btrfs_bio *bbio; in scrub_setup_recheck_block() local
1295 bbio = NULL; in scrub_setup_recheck_block()
1303 logical, &mapped_length, &bbio); in scrub_setup_recheck_block()
1304 if (ret || !bbio || mapped_length < sublen) { in scrub_setup_recheck_block()
1305 btrfs_put_bbio(bbio); in scrub_setup_recheck_block()
1312 btrfs_put_bbio(bbio); in scrub_setup_recheck_block()
1318 recover->bbio = bbio; in scrub_setup_recheck_block()
1323 nmirrors = min(scrub_nr_raid_mirrors(bbio), BTRFS_MAX_MIRRORS); in scrub_setup_recheck_block()
1355 bbio->map_type, in scrub_setup_recheck_block()
1356 bbio->raid_map, in scrub_setup_recheck_block()
1358 bbio->num_stripes - in scrub_setup_recheck_block()
1359 bbio->num_tgtdevs, in scrub_setup_recheck_block()
1363 page->physical = bbio->stripes[stripe_index].physical + in scrub_setup_recheck_block()
1365 page->dev = bbio->stripes[stripe_index].dev; in scrub_setup_recheck_block()
1408 ret = raid56_parity_recover(fs_info, bio, page->recover->bbio, in scrub_submit_raid56_bio_wait()
2099 struct btrfs_bio *bbio = NULL; in scrub_missing_raid56_pages() local
2107 &length, &bbio); in scrub_missing_raid56_pages()
2108 if (ret || !bbio || !bbio->raid_map) in scrub_missing_raid56_pages()
2112 !(bbio->map_type & BTRFS_BLOCK_GROUP_RAID56_MASK))) { in scrub_missing_raid56_pages()
2127 rbio = raid56_alloc_missing_rbio(fs_info, bio, bbio, length); in scrub_missing_raid56_pages()
2147 btrfs_put_bbio(bbio); in scrub_missing_raid56_pages()
2686 struct btrfs_bio *bbio = NULL; in scrub_parity_check_and_repair() local
2698 &length, &bbio); in scrub_parity_check_and_repair()
2699 if (ret || !bbio || !bbio->raid_map) in scrub_parity_check_and_repair()
2707 rbio = raid56_parity_alloc_scrub_rbio(fs_info, bio, bbio, in scrub_parity_check_and_repair()
2722 btrfs_put_bbio(bbio); in scrub_parity_check_and_repair()
2761 struct btrfs_bio *bbio = NULL; in scrub_raid56_parity() local
2900 bbio = NULL; in scrub_raid56_parity()
2902 extent_logical, &mapped_length, &bbio, in scrub_raid56_parity()
2905 if (!bbio || mapped_length < extent_len) in scrub_raid56_parity()
2909 btrfs_put_bbio(bbio); in scrub_raid56_parity()
2912 extent_physical = bbio->stripes[0].physical; in scrub_raid56_parity()
2913 extent_mirror_num = bbio->mirror_num; in scrub_raid56_parity()
2914 extent_dev = bbio->stripes[0].dev; in scrub_raid56_parity()
2915 btrfs_put_bbio(bbio); in scrub_raid56_parity()
4095 struct btrfs_bio *bbio = NULL; in scrub_remap_extent() local
4100 &mapped_length, &bbio, 0); in scrub_remap_extent()
4101 if (ret || !bbio || mapped_length < extent_len || in scrub_remap_extent()
4102 !bbio->stripes[0].dev->bdev) { in scrub_remap_extent()
4103 btrfs_put_bbio(bbio); in scrub_remap_extent()
4107 *extent_physical = bbio->stripes[0].physical; in scrub_remap_extent()
4108 *extent_mirror_num = bbio->mirror_num; in scrub_remap_extent()
4109 *extent_dev = bbio->stripes[0].dev; in scrub_remap_extent()
4110 btrfs_put_bbio(bbio); in scrub_remap_extent()