Lines Matching defs:pd_idx
148 if (idx == sh->pd_idx)
283 WARN_ON(test_bit(R5_InJournal, &sh->dev[sh->pd_idx].flags));
922 /* Don't cross chunks, so stripe pd_idx/qd_idx is the same */
952 while (dd_idx == sh->pd_idx || dd_idx == sh->qd_idx)
1645 if (i == sh->qd_idx || i == sh->pd_idx ||
1876 int count = 0, pd_idx = sh->pd_idx, i;
1880 unsigned int off_dest = off_srcs[count] = sh->dev[pd_idx].offset;
1881 struct page *xor_dest = xor_srcs[count++] = sh->dev[pd_idx].page;
2009 int pd_idx = sh->pd_idx;
2026 if (dev->written || i == pd_idx || i == qd_idx) {
2060 int count, pd_idx = sh->pd_idx, i;
2073 if (pd_idx == i)
2080 set_bit(R5_Discard, &sh->dev[pd_idx].flags);
2093 off_dest = off_srcs[count] = sh->dev[pd_idx].offset;
2094 xor_dest = xor_srcs[count++] = sh->dev[pd_idx].page;
2104 xor_dest = sh->dev[pd_idx].page;
2105 off_dest = sh->dev[pd_idx].offset;
2108 if (i != pd_idx) {
2166 if (sh->pd_idx == i || sh->qd_idx == i)
2173 set_bit(R5_Discard, &sh->dev[sh->pd_idx].flags);
2228 int pd_idx = sh->pd_idx;
2244 xor_dest = sh->dev[pd_idx].page;
2245 off_dest = sh->dev[pd_idx].offset;
2249 if (i == pd_idx || i == qd_idx)
2860 if (sh->qd_idx >= 0 && sh->pd_idx == i)
3007 int pd_idx, qd_idx;
3035 pd_idx = qd_idx = -1;
3038 pd_idx = data_disks;
3043 pd_idx = data_disks - sector_div(stripe2, raid_disks);
3044 if (*dd_idx >= pd_idx)
3048 pd_idx = sector_div(stripe2, raid_disks);
3049 if (*dd_idx >= pd_idx)
3053 pd_idx = data_disks - sector_div(stripe2, raid_disks);
3054 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks;
3057 pd_idx = sector_div(stripe2, raid_disks);
3058 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks;
3061 pd_idx = 0;
3065 pd_idx = data_disks;
3075 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks);
3076 qd_idx = pd_idx + 1;
3077 if (pd_idx == raid_disks-1) {
3080 } else if (*dd_idx >= pd_idx)
3084 pd_idx = sector_div(stripe2, raid_disks);
3085 qd_idx = pd_idx + 1;
3086 if (pd_idx == raid_disks-1) {
3089 } else if (*dd_idx >= pd_idx)
3093 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks);
3094 qd_idx = (pd_idx + 1) % raid_disks;
3095 *dd_idx = (pd_idx + 2 + *dd_idx) % raid_disks;
3098 pd_idx = sector_div(stripe2, raid_disks);
3099 qd_idx = (pd_idx + 1) % raid_disks;
3100 *dd_idx = (pd_idx + 2 + *dd_idx) % raid_disks;
3104 pd_idx = 0;
3109 pd_idx = data_disks;
3117 pd_idx = sector_div(stripe2, raid_disks);
3118 qd_idx = pd_idx + 1;
3119 if (pd_idx == raid_disks-1) {
3122 } else if (*dd_idx >= pd_idx)
3133 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks);
3134 qd_idx = pd_idx + 1;
3135 if (pd_idx == raid_disks-1) {
3138 } else if (*dd_idx >= pd_idx)
3145 pd_idx = raid_disks - 1 - sector_div(stripe2, raid_disks);
3146 qd_idx = (pd_idx + raid_disks - 1) % raid_disks;
3147 *dd_idx = (pd_idx + 1 + *dd_idx) % raid_disks;
3153 pd_idx = data_disks - sector_div(stripe2, raid_disks-1);
3154 if (*dd_idx >= pd_idx)
3160 pd_idx = sector_div(stripe2, raid_disks-1);
3161 if (*dd_idx >= pd_idx)
3167 pd_idx = data_disks - sector_div(stripe2, raid_disks-1);
3168 *dd_idx = (pd_idx + 1 + *dd_idx) % (raid_disks-1);
3173 pd_idx = sector_div(stripe2, raid_disks-1);
3174 *dd_idx = (pd_idx + 1 + *dd_idx) % (raid_disks-1);
3179 pd_idx = 0;
3191 sh->pd_idx = pd_idx;
3222 if (i == sh->pd_idx)
3230 if (i > sh->pd_idx)
3235 if (i < sh->pd_idx)
3237 i -= (sh->pd_idx + 1);
3256 if (sh->pd_idx == raid_disks-1)
3258 else if (i > sh->pd_idx)
3263 if (sh->pd_idx == raid_disks-1)
3267 if (i < sh->pd_idx)
3269 i -= (sh->pd_idx + 2);
3279 if (sh->pd_idx == 0)
3283 if (i < sh->pd_idx)
3285 i -= (sh->pd_idx + 1);
3290 if (i > sh->pd_idx)
3295 if (i < sh->pd_idx)
3297 i -= (sh->pd_idx + 1);
3313 if (check != sh->sector || dummy1 != dd_idx || sh2.pd_idx != sh->pd_idx
3382 int i, pd_idx = sh->pd_idx, qd_idx = sh->qd_idx, disks = sh->disks;
3428 BUG_ON(!(test_bit(R5_UPTODATE, &sh->dev[pd_idx].flags) ||
3429 test_bit(R5_Wantcompute, &sh->dev[pd_idx].flags)));
3436 if (i == pd_idx || i == qd_idx)
3463 set_bit(R5_LOCKED, &sh->dev[pd_idx].flags);
3464 clear_bit(R5_UPTODATE, &sh->dev[pd_idx].flags);
3479 test_bit(R5_Insync, &sh->dev[pd_idx].flags))
3529 if (i != sh->pd_idx &&
3781 if (test_and_clear_bit(R5_Overlap, &sh->dev[sh->pd_idx].flags))
3907 s->failed_num[i] == sh->pd_idx ||
3929 if (s->failed_num[i] != sh->pd_idx &&
3969 ((sh->qd_idx >= 0 && sh->pd_idx == disk_idx) ||
4131 test_bit(R5_Discard, &sh->dev[sh->pd_idx].flags)) {
4133 clear_bit(R5_Discard, &sh->dev[sh->pd_idx].flags);
4134 clear_bit(R5_UPTODATE, &sh->dev[sh->pd_idx].flags);
4216 i == sh->pd_idx || i == sh->qd_idx ||
4228 i != sh->pd_idx && i != sh->qd_idx &&
4252 !test_bit(R5_LOCKED, &sh->dev[sh->pd_idx].flags)) {
4281 i == sh->pd_idx || i == sh->qd_idx ||
4306 i != sh->pd_idx && i != sh->qd_idx &&
4366 clear_bit(R5_UPTODATE, &sh->dev[sh->pd_idx].flags);
4375 dev = &sh->dev[sh->pd_idx];
4427 &sh->dev[sh->pd_idx].flags);
4428 sh->ops.target = sh->pd_idx;
4448 int pd_idx = sh->pd_idx;
4488 clear_bit(R5_UPTODATE, &sh->dev[pd_idx].flags);
4527 dev = &sh->dev[pd_idx];
4597 &sh->dev[pd_idx].flags);
4598 *target = pd_idx;
4632 if (i != sh->pd_idx && i != sh->qd_idx) {
4665 if (j != sh2->pd_idx &&
5037 "pd_idx=%d, qd_idx=%d\n, check:%d, reconstruct:%d\n",
5039 atomic_read(&sh->count), sh->pd_idx, sh->qd_idx,
5104 BUG_ON(!test_bit(R5_UPTODATE, &sh->dev[sh->pd_idx].flags) &&
5105 !test_bit(R5_Discard, &sh->dev[sh->pd_idx].flags));
5112 (i == sh->pd_idx || i == sh->qd_idx ||
5122 ((i == sh->pd_idx || i == sh->qd_idx) &&
5135 pdev = &sh->dev[sh->pd_idx];
5136 s.p_failed = (s.failed >= 1 && s.failed_num[0] == sh->pd_idx)
5137 || (s.failed >= 2 && s.failed_num[1] == sh->pd_idx);
5250 if (test_and_clear_bit(R5_Overlap, &sh->dev[sh->pd_idx].flags))
5819 set_bit(R5_Overlap, &sh->dev[sh->pd_idx].flags);
5825 clear_bit(R5_Overlap, &sh->dev[sh->pd_idx].flags);
5828 if (d == sh->pd_idx || d == sh->qd_idx)
5842 if (d == sh->pd_idx || d == sh->qd_idx)
5895 if (dd_idx == sh->pd_idx || dd_idx == sh->qd_idx)
5926 if (dd_idx == sh->pd_idx || dd_idx == sh->qd_idx)
5946 if (dd_idx == sh->pd_idx || dd_idx == sh->qd_idx)
6124 while (dd_idx == sh.pd_idx || dd_idx == sh.qd_idx)
6433 if (j == sh->pd_idx)