Lines Matching refs:num_stripes
46 int num_stripes; member
3154 u32 num_stripes; in btrfs_del_sys_chunk() local
3174 num_stripes = btrfs_stack_chunk_num_stripes(chunk); in btrfs_del_sys_chunk()
3175 len += btrfs_chunk_item_size(num_stripes); in btrfs_del_sys_chunk()
3315 for (i = 0; i < map->num_stripes; i++) { in remove_chunk_item()
3356 for (i = 0; i < map->num_stripes; i++) { in btrfs_remove_chunk()
3955 int num_stripes = btrfs_chunk_num_stripes(leaf, chunk); in chunk_devid_filter() local
3958 for (i = 0; i < num_stripes; i++) { in chunk_devid_filter()
3967 static u64 calc_data_stripes(u64 type, int num_stripes) in calc_data_stripes() argument
3973 return (num_stripes - nparity) / ncopies; in calc_data_stripes()
3982 int num_stripes = btrfs_chunk_num_stripes(leaf, chunk); in chunk_drange_filter() local
3993 factor = calc_data_stripes(type, num_stripes); in chunk_drange_filter()
3995 for (i = 0; i < num_stripes; i++) { in chunk_drange_filter()
4030 int num_stripes = btrfs_chunk_num_stripes(leaf, chunk); in chunk_stripes_range_filter() local
4032 if (bargs->stripes_min <= num_stripes in chunk_stripes_range_filter()
4033 && num_stripes <= bargs->stripes_max) in chunk_stripes_range_filter()
5198 int num_stripes; member
5395 ctl->num_stripes = ctl->ndevs * ctl->dev_stripes; in decide_stripe_size_regular()
5398 data_stripes = (ctl->num_stripes - ctl->nparity) / ctl->ncopies; in decide_stripe_size_regular()
5441 ctl->num_stripes = ctl->ndevs * ctl->dev_stripes; in decide_stripe_size_zoned()
5442 data_stripes = (ctl->num_stripes - ctl->nparity) / ctl->ncopies; in decide_stripe_size_zoned()
5449 ctl->num_stripes = ctl->ndevs * ctl->dev_stripes; in decide_stripe_size_zoned()
5450 data_stripes = (ctl->num_stripes - ctl->nparity) / ctl->ncopies; in decide_stripe_size_zoned()
5495 for (int i = 0; i < map->num_stripes; i++) { in chunk_map_device_set_bits()
5507 for (int i = 0; i < map->num_stripes; i++) { in chunk_map_device_clear_bits()
5566 struct btrfs_chunk_map *btrfs_alloc_chunk_map(int num_stripes, gfp_t gfp) in btrfs_alloc_chunk_map() argument
5570 map = kmalloc(btrfs_chunk_map_size(num_stripes), gfp); in btrfs_alloc_chunk_map()
5591 map = btrfs_alloc_chunk_map(ctl->num_stripes, GFP_NOFS); in create_chunk()
5602 map->num_stripes = ctl->num_stripes; in create_chunk()
5627 for (int i = 0; i < map->num_stripes; i++) { in create_chunk()
5637 atomic64_sub(ctl->stripe_size * map->num_stripes, in create_chunk()
5755 item_size = btrfs_chunk_item_size(map->num_stripes); in btrfs_chunk_alloc_add_chunk_item()
5764 for (i = 0; i < map->num_stripes; i++) { in btrfs_chunk_alloc_add_chunk_item()
5773 for (i = 0; i < map->num_stripes; i++) { in btrfs_chunk_alloc_add_chunk_item()
5787 btrfs_set_stack_chunk_num_stripes(chunk, map->num_stripes); in btrfs_chunk_alloc_add_chunk_item()
5874 for (i = 0; i < map->num_stripes; i++) { in btrfs_chunk_writeable()
5932 return map->num_stripes; in btrfs_chunk_map_num_copies()
5978 static int btrfs_read_preferred(struct btrfs_chunk_map *map, int first, int num_stripes) in btrfs_read_preferred() argument
5980 for (int index = first; index < first + num_stripes; index++) { in btrfs_read_preferred()
6021 static int btrfs_read_rr(const struct btrfs_chunk_map *map, int first, int num_stripes) in btrfs_read_rr() argument
6034 for (int index = 0, i = first; i < first + num_stripes; i++) { in btrfs_read_rr()
6039 sort(stripes, num_stripes, sizeof(struct stripe_mirror), in btrfs_read_rr()
6043 return stripes[read_cycle % num_stripes].num; in btrfs_read_rr()
6053 int num_stripes; in find_live_mirror() local
6062 num_stripes = map->sub_stripes; in find_live_mirror()
6064 num_stripes = map->num_stripes; in find_live_mirror()
6074 preferred_mirror = first + (current->pid % num_stripes); in find_live_mirror()
6078 preferred_mirror = btrfs_read_rr(map, first, num_stripes); in find_live_mirror()
6081 preferred_mirror = btrfs_read_preferred(map, first, num_stripes); in find_live_mirror()
6102 for (i = first; i < first + num_stripes; i++) { in find_live_mirror()
6161 u32 *num_stripes) in btrfs_map_discard() argument
6214 *num_stripes = 1; in btrfs_map_discard()
6223 factor = map->num_stripes / sub_stripes; in btrfs_map_discard()
6224 *num_stripes = min_t(u64, map->num_stripes, in btrfs_map_discard()
6235 *num_stripes = map->num_stripes; in btrfs_map_discard()
6237 stripe_index = stripe_nr % map->num_stripes; in btrfs_map_discard()
6238 stripe_nr /= map->num_stripes; in btrfs_map_discard()
6241 stripes = kcalloc(*num_stripes, sizeof(*stripes), GFP_NOFS); in btrfs_map_discard()
6247 for (i = 0; i < *num_stripes; i++) { in btrfs_map_discard()
6283 if (stripe_index == map->num_stripes) { in btrfs_map_discard()
6323 int num_stripes = io_geom->num_stripes; in handle_ops_on_dev_replace() local
6345 for (i = 0; i < num_stripes; i++) { in handle_ops_on_dev_replace()
6347 struct btrfs_io_stripe *new = &bioc->stripes[num_stripes + nr_extra_stripes]; in handle_ops_on_dev_replace()
6367 struct btrfs_io_stripe *first = &bioc->stripes[num_stripes]; in handle_ops_on_dev_replace()
6368 struct btrfs_io_stripe *second = &bioc->stripes[num_stripes + 1]; in handle_ops_on_dev_replace()
6384 io_geom->num_stripes = num_stripes + nr_extra_stripes; in handle_ops_on_dev_replace()
6477 io_geom->stripe_index = io_geom->stripe_nr % map->num_stripes; in map_blocks_raid0()
6478 io_geom->stripe_nr /= map->num_stripes; in map_blocks_raid0()
6489 io_geom->num_stripes = map->num_stripes; in map_blocks_raid1()
6507 io_geom->num_stripes = map->num_stripes; in map_blocks_dup()
6524 u32 factor = map->num_stripes / map->sub_stripes; in map_blocks_raid10()
6531 io_geom->num_stripes = map->sub_stripes; in map_blocks_raid10()
6566 io_geom->num_stripes = map->num_stripes; in map_blocks_raid56_write()
6590 (io_geom->stripe_nr + io_geom->stripe_index) % map->num_stripes; in map_blocks_raid56_read()
6599 io_geom->stripe_index = io_geom->stripe_nr % map->num_stripes; in map_blocks_single()
6600 io_geom->stripe_nr /= map->num_stripes; in map_blocks_single()
6658 io_geom.num_stripes = 1; in btrfs_map_block()
6718 if (io_geom.stripe_index >= map->num_stripes) { in btrfs_map_block()
6721 io_geom.stripe_index, map->num_stripes); in btrfs_map_block()
6726 num_alloc_stripes = io_geom.num_stripes; in btrfs_map_block()
6779 for (int i = 0; i < io_geom.num_stripes; i++) { in btrfs_map_block()
6783 stripe_index = (i + io_geom.stripe_nr) % io_geom.num_stripes; in btrfs_map_block()
6795 for (int i = 0; i < io_geom.num_stripes; i++) { in btrfs_map_block()
6819 bioc->num_stripes = io_geom.num_stripes; in btrfs_map_block()
7003 const int data_stripes = calc_data_stripes(map->type, map->num_stripes); in btrfs_calc_stripe_length()
7081 int num_stripes; in read_one_chunk() local
7089 num_stripes = btrfs_chunk_num_stripes(leaf, chunk); in read_one_chunk()
7108 map = btrfs_alloc_chunk_map(num_stripes, GFP_NOFS); in read_one_chunk()
7114 map->num_stripes = num_stripes; in read_one_chunk()
7129 for (i = 0; i < num_stripes; i++) { in read_one_chunk()
7454 for (i = 0; i < map->num_stripes; i++) { in btrfs_check_rw_degradable()
8001 for (i = 0; i < map->num_stripes; i++) { in verify_one_dev_extent()
8005 if (map->verified_stripes >= map->num_stripes) { in verify_one_dev_extent()
8068 if (map->num_stripes != map->verified_stripes) { in verify_chunk_dev_extent_mapping()
8071 map->start, map->verified_stripes, map->num_stripes); in verify_chunk_dev_extent_mapping()
8346 ASSERT(mirror_num <= bioc->num_stripes); in btrfs_map_repair_block()