Lines Matching refs:raid_disks
109 int size = offsetof(struct r10bio, devs[conf->geo.raid_disks]); in r10bio_pool_alloc()
263 for (i = 0; i < conf->geo.raid_disks; i++) { in put_all_bios()
358 for (slot = 0; slot < conf->geo.raid_disks; slot++) { in find_bio_disk()
589 last_far_set_start = (geo->raid_disks / geo->far_set_size) - 1; in __raid10_find_phys()
593 last_far_set_size += (geo->raid_disks % geo->far_set_size); in __raid10_find_phys()
601 dev = sector_div(stripe, geo->raid_disks); in __raid10_find_phys()
620 if ((geo->raid_disks % geo->far_set_size) && in __raid10_find_phys()
635 if (dev >= geo->raid_disks) { in __raid10_find_phys()
668 if (geo->raid_disks % geo->far_set_size) { in raid10_find_virt()
669 last_far_set_start = (geo->raid_disks / geo->far_set_size) - 1; in raid10_find_virt()
674 far_set_size += (geo->raid_disks % geo->far_set_size); in raid10_find_virt()
697 vchunk = chunk * geo->raid_disks + dev; in raid10_find_virt()
1554 conf->geo.raid_disks); in __make_request()
1649 stripe_data_disks = geo->raid_disks / geo->near_copies + in raid10_handle_discard()
1650 geo->raid_disks % geo->near_copies; in raid10_handle_discard()
1652 stripe_data_disks = geo->raid_disks; in raid10_handle_discard()
1716 start_disk_index = sector_div(first_stripe_index, geo->raid_disks); in raid10_handle_discard()
1725 end_disk_index = sector_div(last_stripe_index, geo->raid_disks); in raid10_handle_discard()
1736 memset(r10_bio->devs, 0, sizeof(r10_bio->devs[0]) * geo->raid_disks); in raid10_handle_discard()
1760 for (disk = 0; disk < geo->raid_disks; disk++) { in raid10_handle_discard()
1786 for (disk = 0; disk < geo->raid_disks; disk++) { in raid10_handle_discard()
1894 && (conf->geo.near_copies < conf->geo.raid_disks in raid10_make_request()
1896 conf->prev.raid_disks))) in raid10_make_request()
1914 if (conf->geo.near_copies < conf->geo.raid_disks) in raid10_status()
1923 if (conf->geo.far_set_size != conf->geo.raid_disks) in raid10_status()
1926 seq_printf(seq, " [%d/%d] [", conf->geo.raid_disks, in raid10_status()
1927 conf->geo.raid_disks - mddev->degraded); in raid10_status()
1928 for (i = 0; i < conf->geo.raid_disks; i++) { in raid10_status()
1947 disks = conf->prev.raid_disks; in _enough()
1950 disks = conf->geo.raid_disks; in _enough()
2028 mdname(mddev), conf->geo.raid_disks - mddev->degraded); in raid10_error()
2041 pr_debug(" --- wd:%d rd:%d\n", conf->geo.raid_disks - conf->mddev->degraded, in print_conf()
2042 conf->geo.raid_disks); in print_conf()
2045 for (i = 0; i < conf->geo.raid_disks; i++) { in print_conf()
2075 for (i = 0; i < conf->geo.raid_disks; i++) { in raid10_spare_active()
2117 int last = conf->geo.raid_disks - 1; in raid10_add_disk()
2132 rdev->saved_raid_disk < conf->geo.raid_disks && in raid10_add_disk()
2186 if (unlikely(number >= mddev->raid_disks)) in raid10_remove_disk()
2207 number < conf->geo.raid_disks && in raid10_remove_disk()
3058 for (i = 0; i < conf->geo.raid_disks; i++) in init_resync()
3119 chunks = conf->geo.raid_disks / conf->geo.near_copies; in raid10_set_cluster_sync_high()
3120 if (conf->geo.raid_disks % conf->geo.near_copies == 0) in raid10_set_cluster_sync_high()
3227 else for (i = 0; i < conf->geo.raid_disks; i++) { in raid10_sync_request()
3242 for (i = 0; i < conf->geo.raid_disks; i++) { in raid10_sync_request()
3261 if (chunks_skipped >= conf->geo.raid_disks) { in raid10_sync_request()
3288 if (conf->geo.near_copies < conf->geo.raid_disks && in raid10_sync_request()
3320 for (i = 0 ; i < conf->geo.raid_disks; i++) { in raid10_sync_request()
3390 for (j = 0; j < conf->geo.raid_disks; j++) { in raid10_sync_request()
3721 for (i = 0; i < conf->geo.raid_disks; i++) { in raid10_sync_request()
3787 raid10_size(struct mddev *mddev, sector_t sectors, int raid_disks) in raid10_size() argument
3792 if (!raid_disks) in raid10_size()
3793 raid_disks = min(conf->geo.raid_disks, in raid10_size()
3794 conf->prev.raid_disks); in raid10_size()
3800 size = size * raid_disks; in raid10_size()
3815 size = size * conf->geo.raid_disks; in calc_sectors()
3824 size = DIV_ROUND_UP_SECTOR_T(size, conf->geo.raid_disks); in calc_sectors()
3845 disks = mddev->raid_disks - mddev->delta_disks; in setup_geo()
3850 disks = mddev->raid_disks; in setup_geo()
3857 disks = mddev->raid_disks + mddev->delta_disks; in setup_geo()
3868 geo->raid_disks = disks; in setup_geo()
3922 if (copies < 2 || copies > mddev->raid_disks) { in setup_conf()
3934 conf->mirrors = kcalloc(mddev->raid_disks + max(0, -mddev->delta_disks), in setup_conf()
3996 unsigned int raid_disks = conf->geo.raid_disks; in raid10_nr_stripes() local
3998 if (conf->geo.raid_disks % conf->geo.near_copies) in raid10_nr_stripes()
3999 return raid_disks; in raid10_nr_stripes()
4000 return raid_disks / conf->geo.near_copies; in raid10_nr_stripes()
4063 if (disk_idx >= conf->geo.raid_disks && in raid10_run()
4064 disk_idx >= conf->prev.raid_disks) in raid10_run()
4117 i < conf->geo.raid_disks in raid10_run()
4118 || i < conf->prev.raid_disks; in raid10_run()
4152 mdname(mddev), conf->geo.raid_disks - mddev->degraded, in raid10_run()
4153 conf->geo.raid_disks); in raid10_run()
4275 mddev->delta_disks = mddev->raid_disks; in raid10_takeover_raid0()
4276 mddev->raid_disks *= 2; in raid10_takeover_raid0()
4356 kcalloc(mddev->raid_disks + mddev->delta_disks, in raid10_check_reshape()
4385 for (i = 0; i < conf->prev.raid_disks; i++) { in calc_degraded()
4397 if (conf->geo.raid_disks == conf->prev.raid_disks) in calc_degraded()
4400 for (i = 0; i < conf->geo.raid_disks; i++) { in calc_degraded()
4411 if (conf->geo.raid_disks <= conf->prev.raid_disks) in calc_degraded()
4479 sizeof(struct raid10_info)*conf->prev.raid_disks); in raid10_start_reshape()
4508 newsize = raid10_size(mddev, 0, conf->geo.raid_disks); in raid10_start_reshape()
4550 conf->prev.raid_disks) in raid10_start_reshape()
4558 } else if (rdev->raid_disk >= conf->prev.raid_disks in raid10_start_reshape()
4571 mddev->raid_disks = conf->geo.raid_disks; in raid10_start_reshape()
4588 mddev->raid_disks = conf->geo.raid_disks; in raid10_start_reshape()
4610 s = DIV_ROUND_UP_SECTOR_T(s, geo->raid_disks); in last_dev_address()
4624 sector_div(s, geo->raid_disks); in first_dev_address()
5097 for (d = conf->geo.raid_disks ; in raid10_finish_reshape()
5098 d < conf->geo.raid_disks - mddev->delta_disks; in raid10_finish_reshape()