Lines Matching refs:raid_disks
131 static inline int raid6_next_disk(int disk, int raid_disks) in raid6_next_disk() argument
134 return (disk < raid_disks) ? disk : 0; in raid6_next_disk()
287 else if (injournal == conf->raid_disks - conf->max_degraded) { in do_release_stripe()
591 sh->disks = previous ? conf->previous_raid_disks : conf->raid_disks; in init_stripe()
716 if (conf->raid_disks >= conf->previous_raid_disks) in raid5_calc_degraded()
719 if (conf->raid_disks == conf->previous_raid_disks) in raid5_calc_degraded()
722 for (i = 0; i < conf->raid_disks; i++) { in raid5_calc_degraded()
737 if (conf->raid_disks <= conf->previous_raid_disks) in raid5_calc_degraded()
2413 int devs = max(conf->raid_disks, conf->previous_raid_disks); in grow_stripes()
2657 for (i = conf->raid_disks; i < newsize; i++) { in resize_stripes()
2665 for (i=conf->raid_disks; i < newsize; i++) in resize_stripes()
2934 mdname(mddev), mddev->degraded, conf->raid_disks); in raid5_error()
2937 mdname(mddev), conf->raid_disks - mddev->degraded); in raid5_error()
2967 int raid_disks = previous ? conf->previous_raid_disks in raid5_compute_sector() local
2968 : conf->raid_disks; in raid5_compute_sector()
2969 int data_disks = raid_disks - conf->max_degraded; in raid5_compute_sector()
2996 pd_idx = data_disks - sector_div(stripe2, raid_disks); in raid5_compute_sector()
3001 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
3006 pd_idx = data_disks - sector_div(stripe2, raid_disks); in raid5_compute_sector()
3007 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks; in raid5_compute_sector()
3010 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
3011 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks; in raid5_compute_sector()
3028 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
3030 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
3037 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
3039 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
3046 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
3047 qd_idx = (pd_idx + 1) % raid_disks; in raid5_compute_sector()
3048 *dd_idx = (pd_idx + 2 + *dd_idx) % raid_disks; in raid5_compute_sector()
3051 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
3052 qd_idx = (pd_idx + 1) % raid_disks; in raid5_compute_sector()
3053 *dd_idx = (pd_idx + 2 + *dd_idx) % raid_disks; in raid5_compute_sector()
3070 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
3072 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
3086 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
3088 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
3098 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
3099 qd_idx = (pd_idx + raid_disks - 1) % raid_disks; in raid5_compute_sector()
3100 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks; in raid5_compute_sector()
3106 pd_idx = data_disks - sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
3109 qd_idx = raid_disks - 1; in raid5_compute_sector()
3113 pd_idx = sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
3116 qd_idx = raid_disks - 1; in raid5_compute_sector()
3120 pd_idx = data_disks - sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
3121 *dd_idx = (pd_idx + 1 + *dd_idx) % (raid_disks-1); in raid5_compute_sector()
3122 qd_idx = raid_disks - 1; in raid5_compute_sector()
3126 pd_idx = sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
3127 *dd_idx = (pd_idx + 1 + *dd_idx) % (raid_disks-1); in raid5_compute_sector()
3128 qd_idx = raid_disks - 1; in raid5_compute_sector()
3134 qd_idx = raid_disks - 1; in raid5_compute_sector()
3158 int raid_disks = sh->disks; in raid5_compute_blocknr() local
3159 int data_disks = raid_disks - conf->max_degraded; in raid5_compute_blocknr()
3189 i += raid_disks; in raid5_compute_blocknr()
3209 if (sh->pd_idx == raid_disks-1) in raid5_compute_blocknr()
3216 if (sh->pd_idx == raid_disks-1) in raid5_compute_blocknr()
3221 i += raid_disks; in raid5_compute_blocknr()
3237 i += raid_disks; in raid5_compute_blocknr()
3583 int disks = previous ? conf->previous_raid_disks : conf->raid_disks; in stripe_set_idx()
3716 for (i = 0; i < conf->raid_disks; i++) { in handle_failed_sync()
4577 for (j = 0; j < conf->raid_disks; j++) in handle_stripe_expansion()
4582 if (j == conf->raid_disks) { in handle_stripe_expansion()
5135 for (i = 0; i < conf->raid_disks; i++) in handle_stripe()
5199 for (i = conf->raid_disks; i--; ) { in handle_stripe()
5209 sh->disks = conf->raid_disks; in handle_stripe()
5695 (conf->raid_disks - conf->max_degraded); in make_discard_request()
5718 for (d = 0; d < conf->raid_disks; d++) { in make_discard_request()
5732 for (d = 0; d < conf->raid_disks; d++) { in make_discard_request()
5899 (conf->raid_disks - conf->max_degraded); in raid5_bitmap_sector()
6045 int raid_disks = conf->raid_disks; in raid5_bio_lowest_chunk_sector() local
6064 if (dd_idx >= raid_disks) in raid5_bio_lowest_chunk_sector()
6206 static sector_t raid5_size(struct mddev *mddev, sector_t sectors, int raid_disks);
6223 int raid_disks = conf->previous_raid_disks; in reshape_request() local
6224 int data_disks = raid_disks - conf->max_degraded; in reshape_request()
6225 int new_data_disks = conf->raid_disks - conf->max_degraded; in reshape_request()
6561 for (i = 0; i < conf->raid_disks; i++) { in raid5_sync_request()
7284 raid5_size(struct mddev *mddev, sector_t sectors, int raid_disks) in raid5_size() argument
7290 if (!raid_disks) in raid5_size()
7292 raid_disks = min(conf->raid_disks, conf->previous_raid_disks); in raid5_size()
7296 return sectors * (raid_disks - conf->max_degraded); in raid5_size()
7316 max(conf->raid_disks, in alloc_scratch_buffer()
7389 conf->scribble_disks = max(conf->raid_disks, in raid5_alloc_percpu()
7458 if (mddev->new_level == 6 && mddev->raid_disks < 4) { in setup_conf()
7460 mdname(mddev), mddev->raid_disks); in setup_conf()
7527 conf->raid_disks = mddev->raid_disks; in setup_conf()
7529 conf->previous_raid_disks = mddev->raid_disks; in setup_conf()
7531 conf->previous_raid_disks = mddev->raid_disks - mddev->delta_disks; in setup_conf()
7532 max_disks = max(conf->raid_disks, conf->previous_raid_disks); in setup_conf()
7666 conf->shrinker->seeks = DEFAULT_SEEKS * conf->raid_disks * 4; in setup_conf()
7692 static int only_parity(int raid_disk, int algo, int raid_disks, int max_degraded) in only_parity() argument
7700 if (raid_disk >= raid_disks - max_degraded) in only_parity()
7705 raid_disk == raid_disks - 1) in only_parity()
7712 if (raid_disk == raid_disks - 1) in only_parity()
7739 lim.io_opt = lim.io_min * (conf->raid_disks - conf->max_degraded); in raid5_set_limits()
7853 old_disks = mddev->raid_disks - mddev->delta_disks; in raid5_run()
7863 new_data_disks = mddev->raid_disks - max_degraded; in raid5_run()
7941 for (i = 0; i < conf->raid_disks && conf->previous_raid_disks; in raid5_run()
7971 conf->raid_disks, in raid5_run()
7990 mdname(mddev), mddev->degraded, conf->raid_disks); in raid5_run()
8015 mddev->raid_disks-mddev->degraded, mddev->raid_disks, in raid5_run()
8074 seq_printf (seq, " [%d/%d] [", conf->raid_disks, conf->raid_disks - mddev->degraded); in raid5_status()
8075 for (i = 0; i < conf->raid_disks; i++) { in raid5_status()
8094 conf->raid_disks, in print_raid5_conf()
8095 conf->raid_disks - conf->mddev->degraded); in print_raid5_conf()
8097 for (i = 0; i < conf->raid_disks; i++) { in print_raid5_conf()
8114 for (i = 0; i < conf->raid_disks; i++) { in raid5_spare_active()
8185 if (number >= conf->raid_disks && in raid5_remove_disk()
8201 number < conf->raid_disks) { in raid5_remove_disk()
8238 int last = conf->raid_disks - 1; in raid5_add_disk()
8328 newsize = raid5_size(mddev, sectors, mddev->raid_disks); in raid5_resize()
8393 if (mddev->raid_disks + mddev->delta_disks < min) in check_reshape()
8436 for (i = 0; i < conf->raid_disks; i++) in raid5_start_reshape()
8456 if (raid5_size(mddev, 0, conf->raid_disks + mddev->delta_disks) in raid5_start_reshape()
8466 conf->previous_raid_disks = conf->raid_disks; in raid5_start_reshape()
8467 conf->raid_disks += mddev->delta_disks; in raid5_start_reshape()
8527 mddev->raid_disks = conf->raid_disks; in raid5_start_reshape()
8551 conf->previous_raid_disks = conf->raid_disks; in end_reshape()
8565 conf->raid_disks - conf->max_degraded); in end_reshape()
8584 for (d = conf->raid_disks ; in raid5_finish_reshape()
8585 d < conf->raid_disks - mddev->delta_disks; in raid5_finish_reshape()
8656 mddev->raid_disks += 1; in raid45_takeover_raid0()
8669 if (mddev->raid_disks != 2 || in raid5_takeover_raid1()
8725 mddev->raid_disks -= 1; in raid5_takeover_raid6()
8753 if (mddev->raid_disks == 2) { in raid5_check_reshape()
8843 if (mddev->raid_disks > 253) in raid6_takeover()
8845 if (mddev->raid_disks < 3) in raid6_takeover()
8873 mddev->raid_disks += 1; in raid6_takeover()