Lines Matching refs:qd_idx
118 if (sh->qd_idx == sh->disks - 1)
121 return sh->qd_idx + 1;
143 if (idx == sh->qd_idx)
824 /* Don't cross chunks, so stripe pd_idx/qd_idx is the same */
870 while (dd_idx == sh->pd_idx || dd_idx == sh->qd_idx)
1567 if (i == sh->qd_idx || i == sh->pd_idx ||
1599 int qd_idx = sh->qd_idx;
1627 if (target == qd_idx) {
1640 if (i == target || i == qd_idx)
1723 int qd_idx = sh->qd_idx;
1726 if (target == qd_idx)
1733 if (i == data_target || i == qd_idx)
1932 int qd_idx = sh->qd_idx;
1948 if (dev->written || i == pd_idx || i == qd_idx) {
2088 if (sh->pd_idx == i || sh->qd_idx == i)
2096 set_bit(R5_Discard, &sh->dev[sh->qd_idx].flags);
2151 int qd_idx = sh->qd_idx;
2171 if (i == pd_idx || i == qd_idx)
2770 if (sh->qd_idx >= 0 && sh->pd_idx == i)
2919 int pd_idx, qd_idx;
2947 pd_idx = qd_idx = -1;
2988 qd_idx = pd_idx + 1;
2991 qd_idx = 0;
2997 qd_idx = pd_idx + 1;
3000 qd_idx = 0;
3006 qd_idx = (pd_idx + 1) % raid_disks;
3011 qd_idx = (pd_idx + 1) % raid_disks;
3017 qd_idx = 1;
3022 qd_idx = data_disks + 1;
3030 qd_idx = pd_idx + 1;
3033 qd_idx = 0;
3046 qd_idx = pd_idx + 1;
3049 qd_idx = 0;
3058 qd_idx = (pd_idx + raid_disks - 1) % raid_disks;
3068 qd_idx = raid_disks - 1;
3075 qd_idx = raid_disks - 1;
3081 qd_idx = raid_disks - 1;
3087 qd_idx = raid_disks - 1;
3093 qd_idx = raid_disks - 1;
3104 sh->qd_idx = qd_idx;
3161 if (i == sh->qd_idx)
3226 || sh2.qd_idx != sh->qd_idx) {
3294 int i, pd_idx = sh->pd_idx, qd_idx = sh->qd_idx, disks = sh->disks;
3343 (!(test_bit(R5_UPTODATE, &sh->dev[qd_idx].flags) ||
3344 test_bit(R5_Wantcompute, &sh->dev[qd_idx].flags))));
3348 if (i == pd_idx || i == qd_idx)
3380 int qd_idx = sh->qd_idx;
3381 struct r5dev *dev = &sh->dev[qd_idx];
3796 s->failed_num[i] == sh->qd_idx) &&
3818 s->failed_num[i] != sh->qd_idx &&
3857 ((sh->qd_idx >= 0 && sh->pd_idx == disk_idx) ||
4023 if (sh->qd_idx >= 0) {
4024 clear_bit(R5_Discard, &sh->dev[sh->qd_idx].flags);
4025 clear_bit(R5_UPTODATE, &sh->dev[sh->qd_idx].flags);
4104 i == sh->pd_idx || i == sh->qd_idx ||
4116 i != sh->pd_idx && i != sh->qd_idx &&
4169 i == sh->pd_idx || i == sh->qd_idx ||
4194 i != sh->pd_idx && i != sh->qd_idx &&
4337 int qd_idx = sh->qd_idx;
4421 dev = &sh->dev[qd_idx];
4492 &sh->dev[qd_idx].flags);
4493 *target = qd_idx;
4520 if (i != sh->pd_idx && i != sh->qd_idx) {
4553 j != sh2->qd_idx &&
4924 "pd_idx=%d, qd_idx=%d\n, check:%d, reconstruct:%d\n",
4926 atomic_read(&sh->count), sh->pd_idx, sh->qd_idx,
4993 BUG_ON(sh->qd_idx >= 0 &&
4994 !test_bit(R5_UPTODATE, &sh->dev[sh->qd_idx].flags) &&
4995 !test_bit(R5_Discard, &sh->dev[sh->qd_idx].flags));
4999 (i == sh->pd_idx || i == sh->qd_idx ||
5009 ((i == sh->pd_idx || i == sh->qd_idx) &&
5025 qdev = &sh->dev[sh->qd_idx];
5026 s.q_failed = (s.failed >= 1 && s.failed_num[0] == sh->qd_idx)
5027 || (s.failed >= 2 && s.failed_num[1] == sh->qd_idx)
5719 if (d == sh->pd_idx || d == sh->qd_idx)
5733 if (d == sh->pd_idx || d == sh->qd_idx)
6113 j == sh->qd_idx)