Lines Matching refs:raid_disks

199 static inline int raid6_next_disk(int disk, int raid_disks)  in raid6_next_disk()  argument
202 return (disk < raid_disks) ? disk : 0; in raid6_next_disk()
534 sh->disks = previous ? conf->previous_raid_disks : conf->raid_disks; in init_stripe()
612 if (conf->raid_disks >= conf->previous_raid_disks) in calc_degraded()
616 if (conf->raid_disks == conf->previous_raid_disks) in calc_degraded()
620 for (i = 0; i < conf->raid_disks; i++) { in calc_degraded()
634 if (conf->raid_disks <= conf->previous_raid_disks) in calc_degraded()
2025 int devs = max(conf->raid_disks, conf->previous_raid_disks); in grow_stripes()
2227 for (i=0; i<conf->raid_disks; i++) in resize_stripes()
2240 for (i=conf->raid_disks; i < newsize; i++) in resize_stripes()
2527 conf->raid_disks - mddev->degraded); in error()
2548 int raid_disks = previous ? conf->previous_raid_disks in raid5_compute_sector() local
2549 : conf->raid_disks; in raid5_compute_sector()
2550 int data_disks = raid_disks - conf->max_degraded; in raid5_compute_sector()
2577 pd_idx = data_disks - sector_div(stripe2, raid_disks); in raid5_compute_sector()
2582 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
2587 pd_idx = data_disks - sector_div(stripe2, raid_disks); in raid5_compute_sector()
2588 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks; in raid5_compute_sector()
2591 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
2592 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks; in raid5_compute_sector()
2609 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
2611 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
2618 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
2620 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
2627 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
2628 qd_idx = (pd_idx + 1) % raid_disks; in raid5_compute_sector()
2629 *dd_idx = (pd_idx + 2 + *dd_idx) % raid_disks; in raid5_compute_sector()
2632 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
2633 qd_idx = (pd_idx + 1) % raid_disks; in raid5_compute_sector()
2634 *dd_idx = (pd_idx + 2 + *dd_idx) % raid_disks; in raid5_compute_sector()
2651 pd_idx = sector_div(stripe2, raid_disks); in raid5_compute_sector()
2653 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
2667 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
2669 if (pd_idx == raid_disks-1) { in raid5_compute_sector()
2679 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks); in raid5_compute_sector()
2680 qd_idx = (pd_idx + raid_disks - 1) % raid_disks; in raid5_compute_sector()
2681 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks; in raid5_compute_sector()
2687 pd_idx = data_disks - sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
2690 qd_idx = raid_disks - 1; in raid5_compute_sector()
2694 pd_idx = sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
2697 qd_idx = raid_disks - 1; in raid5_compute_sector()
2701 pd_idx = data_disks - sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
2702 *dd_idx = (pd_idx + 1 + *dd_idx) % (raid_disks-1); in raid5_compute_sector()
2703 qd_idx = raid_disks - 1; in raid5_compute_sector()
2707 pd_idx = sector_div(stripe2, raid_disks-1); in raid5_compute_sector()
2708 *dd_idx = (pd_idx + 1 + *dd_idx) % (raid_disks-1); in raid5_compute_sector()
2709 qd_idx = raid_disks - 1; in raid5_compute_sector()
2715 qd_idx = raid_disks - 1; in raid5_compute_sector()
2739 int raid_disks = sh->disks; in raid5_compute_blocknr() local
2740 int data_disks = raid_disks - conf->max_degraded; in raid5_compute_blocknr()
2770 i += raid_disks; in raid5_compute_blocknr()
2790 if (sh->pd_idx == raid_disks-1) in raid5_compute_blocknr()
2797 if (sh->pd_idx == raid_disks-1) in raid5_compute_blocknr()
2802 i += raid_disks; in raid5_compute_blocknr()
2818 i += raid_disks; in raid5_compute_blocknr()
3061 int disks = previous ? conf->previous_raid_disks : conf->raid_disks; in stripe_set_idx()
3215 for (i = 0; i < conf->raid_disks; i++) { in handle_failed_sync()
3980 for (j = 0; j < conf->raid_disks; j++) in handle_stripe_expansion()
3985 if (j == conf->raid_disks) { in handle_stripe_expansion()
4479 for (i = 0; i < conf->raid_disks; i++) in handle_stripe()
4544 for (i = conf->raid_disks; i--; ) { in handle_stripe()
4554 sh->disks = conf->raid_disks; in handle_stripe()
5070 (conf->raid_disks - conf->max_degraded); in make_discard_request()
5094 for (d = 0; d < conf->raid_disks; d++) { in make_discard_request()
5108 for (d = 0; d < conf->raid_disks; d++) { in make_discard_request()
5119 d < conf->raid_disks - conf->max_degraded; in make_discard_request()
5330 static sector_t raid5_size(struct mddev *mddev, sector_t sectors, int raid_disks);
5346 int raid_disks = conf->previous_raid_disks; in reshape_request() local
5347 int data_disks = raid_disks - conf->max_degraded; in reshape_request()
5348 int new_data_disks = conf->raid_disks - conf->max_degraded; in reshape_request()
5657 for (i = 0; i < conf->raid_disks; i++) { in sync_request()
6286 raid5_size(struct mddev *mddev, sector_t sectors, int raid_disks) in raid5_size() argument
6292 if (!raid_disks) in raid5_size()
6294 raid_disks = min(conf->raid_disks, conf->previous_raid_disks); in raid5_size()
6298 return sectors * (raid_disks - conf->max_degraded); in raid5_size()
6315 percpu->scribble = scribble_alloc(max(conf->raid_disks, in alloc_scratch_buffer()
6421 conf->scribble_disks = max(conf->raid_disks, in raid5_alloc_percpu()
6487 if (mddev->new_level == 6 && mddev->raid_disks < 4) { in setup_conf()
6489 mdname(mddev), mddev->raid_disks); in setup_conf()
6530 conf->raid_disks = mddev->raid_disks; in setup_conf()
6532 conf->previous_raid_disks = mddev->raid_disks; in setup_conf()
6534 conf->previous_raid_disks = mddev->raid_disks - mddev->delta_disks; in setup_conf()
6535 max_disks = max(conf->raid_disks, conf->previous_raid_disks); in setup_conf()
6634 conf->shrinker.seeks = DEFAULT_SEEKS * conf->raid_disks * 4; in setup_conf()
6660 static int only_parity(int raid_disk, int algo, int raid_disks, int max_degraded) in only_parity() argument
6668 if (raid_disk >= raid_disks - max_degraded) in only_parity()
6673 raid_disk == raid_disks - 1) in only_parity()
6680 if (raid_disk == raid_disks - 1) in only_parity()
6755 old_disks = mddev->raid_disks - mddev->delta_disks; in run()
6765 new_data_disks = mddev->raid_disks - max_degraded; in run()
6836 for (i = 0; i < conf->raid_disks && conf->previous_raid_disks; in run()
6876 conf->raid_disks, in run()
6896 mdname(mddev), mddev->degraded, conf->raid_disks); in run()
6922 mddev->raid_disks-mddev->degraded, mddev->raid_disks, in run()
6928 mddev->raid_disks - mddev->degraded, in run()
6929 mddev->raid_disks, mddev->new_layout); in run()
6970 (conf->raid_disks - conf->max_degraded)); in run()
7067 seq_printf (seq, " [%d/%d] [", conf->raid_disks, conf->raid_disks - mddev->degraded); in status()
7068 for (i = 0; i < conf->raid_disks; i++) in status()
7086 conf->raid_disks, in print_raid5_conf()
7087 conf->raid_disks - conf->mddev->degraded); in print_raid5_conf()
7089 for (i = 0; i < conf->raid_disks; i++) { in print_raid5_conf()
7107 for (i = 0; i < conf->raid_disks; i++) { in raid5_spare_active()
7167 if (number >= conf->raid_disks && in raid5_remove_disk()
7183 number < conf->raid_disks) { in raid5_remove_disk()
7220 int last = conf->raid_disks - 1; in raid5_add_disk()
7288 newsize = raid5_size(mddev, sectors, mddev->raid_disks); in raid5_resize()
7355 if (mddev->raid_disks + mddev->delta_disks < min) in check_reshape()
7407 if (raid5_size(mddev, 0, conf->raid_disks + mddev->delta_disks) in raid5_start_reshape()
7417 conf->previous_raid_disks = conf->raid_disks; in raid5_start_reshape()
7418 conf->raid_disks += mddev->delta_disks; in raid5_start_reshape()
7478 mddev->raid_disks = conf->raid_disks; in raid5_start_reshape()
7493 mddev->raid_disks = conf->raid_disks = conf->previous_raid_disks; in raid5_start_reshape()
7523 conf->previous_raid_disks = conf->raid_disks; in end_reshape()
7536 int data_disks = conf->raid_disks - conf->max_degraded; in end_reshape()
7563 for (d = conf->raid_disks ; in raid5_finish_reshape()
7564 d < conf->raid_disks - mddev->delta_disks; in raid5_finish_reshape()
7637 mddev->raid_disks += 1; in raid45_takeover_raid0()
7649 if (mddev->raid_disks != 2 || in raid5_takeover_raid1()
7701 mddev->raid_disks -= 1; in raid5_takeover_raid6()
7729 if (mddev->raid_disks == 2) { in raid5_check_reshape()
7819 if (mddev->raid_disks > 253) in raid6_takeover()
7821 if (mddev->raid_disks < 3) in raid6_takeover()
7849 mddev->raid_disks += 1; in raid6_takeover()