• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500-V1.0.1.40_1.0.68/src/linux/linux-2.6/drivers/md/

Lines Matching defs:pd_idx

220 static void init_stripe(struct stripe_head *sh, sector_t sector, int pd_idx, int disks)
235 sh->pd_idx = pd_idx;
275 int pd_idx, int noblock)
305 init_stripe(sh, sector, pd_idx, disks);
689 unsigned int * pd_idx, raid5_conf_t *conf)
721 *pd_idx = data_disks;
726 *pd_idx = data_disks - stripe % raid_disks;
727 if (*dd_idx >= *pd_idx)
731 *pd_idx = stripe % raid_disks;
732 if (*dd_idx >= *pd_idx)
736 *pd_idx = data_disks - stripe % raid_disks;
737 *dd_idx = (*pd_idx + 1 + *dd_idx) % raid_disks;
740 *pd_idx = stripe % raid_disks;
741 *dd_idx = (*pd_idx + 1 + *dd_idx) % raid_disks;
753 *pd_idx = raid_disks - 1 - (stripe % raid_disks);
754 if (*pd_idx == raid_disks-1)
756 else if (*dd_idx >= *pd_idx)
760 *pd_idx = stripe % raid_disks;
761 if (*pd_idx == raid_disks-1)
763 else if (*dd_idx >= *pd_idx)
767 *pd_idx = raid_disks - 1 - (stripe % raid_disks);
768 *dd_idx = (*pd_idx + 2 + *dd_idx) % raid_disks;
771 *pd_idx = stripe % raid_disks;
772 *dd_idx = (*pd_idx + 2 + *dd_idx) % raid_disks;
806 if (i == sh->pd_idx)
814 if (i > sh->pd_idx)
819 if (i < sh->pd_idx)
821 i -= (sh->pd_idx + 1);
829 if (i == raid6_next_disk(sh->pd_idx, raid_disks))
834 if (sh->pd_idx == raid_disks-1)
836 else if (i > sh->pd_idx)
841 if (sh->pd_idx == raid_disks-1)
845 if (i < sh->pd_idx)
847 i -= (sh->pd_idx + 2);
861 if (check != sh->sector || dummy1 != dd_idx || dummy2 != sh->pd_idx) {
959 int i, pd_idx = sh->pd_idx, disks = sh->disks, count;
967 ptr[0] = page_address(sh->dev[pd_idx].page);
970 BUG_ON(!test_bit(R5_UPTODATE, &sh->dev[pd_idx].flags));
972 if (i==pd_idx)
992 if (i!=pd_idx && sh->dev[i].towrite) {
1028 if (i != pd_idx) {
1044 set_bit(R5_UPTODATE, &sh->dev[pd_idx].flags);
1045 set_bit(R5_LOCKED, &sh->dev[pd_idx].flags);
1047 clear_bit(R5_UPTODATE, &sh->dev[pd_idx].flags);
1053 int i, pd_idx = sh->pd_idx, qd_idx, d0_idx, disks = sh->disks, count;
1058 qd_idx = raid6_next_disk(pd_idx, disks);
1069 if ( i != pd_idx && i != qd_idx && sh->dev[i].towrite ) {
1118 set_bit(R5_UPTODATE, &sh->dev[pd_idx].flags);
1120 set_bit(R5_LOCKED, &sh->dev[pd_idx].flags);
1124 set_bit(R5_UPTODATE, &sh->dev[pd_idx].flags);
1136 int pd_idx = sh->pd_idx;
1137 int qd_idx = raid6_next_disk(pd_idx, disks);
1173 int pd_idx = sh->pd_idx;
1174 int qd_idx = raid6_next_disk(pd_idx, disks);
1179 /* pd_idx become disks-2 and qd_idx become disks-1 */
1319 int pd_idx, dd_idx;
1325 &dd_idx, &pd_idx, conf);
1326 return pd_idx;
1361 PRINTK("handling stripe %llu, cnt=%d, pd_idx=%d\n",
1363 sh->pd_idx);
1518 dev = &sh->dev[sh->pd_idx];
1522 || (failed == 1 && failed_num == sh->pd_idx))
1601 if ((dev->towrite || i == sh->pd_idx) &&
1606 /* && !(!mddev->insync && i == sh->pd_idx) */
1612 if (!test_bit(R5_OVERWRITE, &dev->flags) && i != sh->pd_idx &&
1627 if ((dev->towrite || i == sh->pd_idx) &&
1646 if (!test_bit(R5_OVERWRITE, &dev->flags) && i != sh->pd_idx &&
1673 || (i==sh->pd_idx && failed == 0))
1695 if (page_is_zero(sh->dev[sh->pd_idx].page)) {
1704 compute_block(sh, sh->pd_idx);
1712 failed_num = sh->pd_idx;
1754 sh->pd_idx = stripe_to_pdidx(sh->sector, conf, conf->raid_disks);
1775 if (i != sh->pd_idx) {
1776 int dd_idx, pd_idx, j;
1782 &dd_idx, &pd_idx, conf);
1783 sh2 = get_active_stripe(conf, s, conf->raid_disks, pd_idx, 1);
1802 if (j != sh2->pd_idx &&
1897 int pd_idx = sh->pd_idx;
1898 int qd_idx = raid6_next_disk(pd_idx, disks);
1901 PRINTK("handling stripe %llu, state=%#lx cnt=%d, pd_idx=%d, qd_idx=%d\n",
1903 pd_idx, qd_idx);
2061 pdev = &sh->dev[pd_idx];
2062 p_failed = (failed >= 1 && failed_num[0] == pd_idx)
2063 || (failed >= 2 && failed_num[1] == pd_idx);
2171 && i != pd_idx && i != qd_idx
2191 && !(failed == 0 && (i == pd_idx || i == qd_idx))
2271 compute_block_1(sh, pd_idx, 1);
2272 if (!page_is_zero(sh->dev[pd_idx].page)) {
2273 compute_block_1(sh,pd_idx,0);
2317 dev = &sh->dev[pd_idx];
2364 sh->pd_idx = stripe_to_pdidx(sh->sector, conf,
2386 if (i != pd_idx && i != qd_idx) {
2418 if (j != sh2->pd_idx &&
2419 j != raid6_next_disk(sh2->pd_idx,
2774 unsigned int dd_idx, pd_idx;
2801 &pd_idx,
2842 unsigned int dd_idx, pd_idx;
2902 &dd_idx, &pd_idx, conf);
2907 sh = get_active_stripe(conf, new_sector, disks, pd_idx, (bi->bi_rw&RWA_MASK));
2988 int pd_idx;
3040 pd_idx = stripe_to_pdidx(sector_nr+i, conf, conf->raid_disks);
3042 conf->raid_disks, pd_idx, 0);
3050 if (j == sh->pd_idx)
3053 j == raid6_next_disk(sh->pd_idx, sh->disks))
3081 &dd_idx, &pd_idx, conf);
3086 &dd_idx, &pd_idx, conf);
3090 pd_idx = stripe_to_pdidx(first_sector, conf,
3093 conf->previous_raid_disks, pd_idx, 0);
3106 int pd_idx;
3153 pd_idx = stripe_to_pdidx(sector_nr, conf, raid_disks);
3154 sh = get_active_stripe(conf, sector_nr, raid_disks, pd_idx, 1);
3156 sh = get_active_stripe(conf, sector_nr, raid_disks, pd_idx, 0);
3196 int dd_idx, pd_idx;
3207 &pd_idx,
3220 sh = get_active_stripe(conf, sector, conf->raid_disks, pd_idx, 1);
3694 seq_printf(seq, "sh %llu, pd_idx %d, state %ld.\n",
3695 (unsigned long long)sh->sector, sh->pd_idx, sh->state);