Lines Matching refs:mirrors
317 conf->mirrors[r10_bio->devs[slot].devnum].head_position =
443 rdev = conf->mirrors[dev].replacement;
447 rdev = conf->mirrors[dev].rdev;
693 * If there are 2 mirrors in the same 2 devices, performance degrades
752 rdev = rcu_dereference(conf->mirrors[disk].replacement);
762 rdev = rcu_dereference(conf->mirrors[disk].rdev);
830 conf->mirrors[disk].head_position);
1158 err_rdev = rcu_dereference(conf->mirrors[disk].rdev);
1237 rdev = conf->mirrors[devnum].replacement;
1241 rdev = conf->mirrors[devnum].rdev;
1244 rdev = conf->mirrors[devnum].rdev;
1258 &conf->mirrors[devnum].rdev->flags)
1361 rrdev = rcu_dereference(conf->mirrors[d].replacement);
1367 rdev = rcu_dereference(conf->mirrors[d].rdev);
1452 rdev_dec_pending(conf->mirrors[d].rdev, mddev);
1457 rdev = conf->mirrors[d].replacement;
1461 rdev = conf->mirrors[d].rdev;
1575 struct md_rdev *rdev = rcu_dereference(conf->mirrors[i].rdev);
1608 (rdev = rcu_dereference(conf->mirrors[this].rdev)) &&
1689 rdev = conf->mirrors[i].rdev;
1719 tmp = conf->mirrors + i;
1778 conf->mirrors[rdev->saved_raid_disk].rdev == NULL)
1783 struct raid10_info *p = &conf->mirrors[mirror];
1833 p = conf->mirrors + number;
1897 &conf->mirrors[d].rdev->corrected_errors);
1902 rdev_dec_pending(conf->mirrors[d].rdev, conf->mddev);
1970 rdev = conf->mirrors[d].replacement;
1972 rdev = conf->mirrors[d].rdev;
2051 rdev = conf->mirrors[d].rdev;
2097 atomic_inc(&conf->mirrors[d].rdev->nr_pending);
2099 md_sync_acct(conf->mirrors[d].rdev->bdev, bio_sectors(tbio));
2101 if (test_bit(FailFast, &conf->mirrors[d].rdev->flags))
2103 tbio->bi_iter.bi_sector += conf->mirrors[d].rdev->data_offset;
2104 bio_set_dev(tbio, conf->mirrors[d].rdev->bdev);
2122 md_sync_acct(conf->mirrors[d].replacement->bdev,
2172 rdev = conf->mirrors[dr].rdev;
2180 rdev = conf->mirrors[dw].rdev;
2202 if (rdev != conf->mirrors[dw].rdev) {
2204 struct md_rdev *rdev2 = conf->mirrors[dw].rdev;
2212 conf->mirrors[dw].recovery_disabled
2256 atomic_inc(&conf->mirrors[d].rdev->nr_pending);
2257 md_sync_acct(conf->mirrors[d].rdev->bdev, bio_sectors(wbio));
2261 atomic_inc(&conf->mirrors[d].replacement->nr_pending);
2262 md_sync_acct(conf->mirrors[d].replacement->bdev,
2331 * 1. Retries failed read operations on working mirrors.
2347 rdev = conf->mirrors[d].rdev;
2385 rdev = rcu_dereference(conf->mirrors[d].rdev);
2416 rdev = conf->mirrors[dn].rdev;
2440 rdev = rcu_dereference(conf->mirrors[d].rdev);
2476 rdev = rcu_dereference(conf->mirrors[d].rdev);
2526 struct md_rdev *rdev = conf->mirrors[r10_bio->devs[i].devnum].rdev;
2631 rdev = conf->mirrors[dev].rdev;
2647 rdev = conf->mirrors[dev].replacement;
2671 rdev = conf->mirrors[dev].rdev;
2688 rdev = conf->mirrors[dev].replacement;
2799 if (conf->mirrors[i].replacement)
2986 rcu_dereference(conf->mirrors[i].replacement);
3056 struct raid10_info *mirror = &conf->mirrors[i];
3129 conf->mirrors[j].rdev);
3145 rcu_dereference(conf->mirrors[d].rdev);
3278 if (conf->mirrors[d].rdev &&
3280 &conf->mirrors[d].rdev->flags))
3348 rdev = rcu_dereference(conf->mirrors[d].rdev);
3378 rdev = rcu_dereference(conf->mirrors[d].replacement);
3406 rdev_dec_pending(conf->mirrors[d].rdev,
3411 conf->mirrors[d].replacement,
3639 kfree(conf->mirrors);
3674 conf->mirrors = kcalloc(mddev->raid_disks + max(0, -mddev->delta_disks),
3677 if (!conf->mirrors)
3800 disk = conf->mirrors + disk_idx;
3840 pr_err("md/raid10:%s: not enough operational mirrors.\n",
3861 disk = conf->mirrors + i;
4098 /* allocate new 'mirrors' list */
4131 struct md_rdev *rdev = rcu_dereference(conf->mirrors[i].rdev);
4147 struct md_rdev *rdev = rcu_dereference(conf->mirrors[i].rdev);
4224 memcpy(conf->mirrors_new, conf->mirrors,
4228 conf->mirrors_old = conf->mirrors;
4229 conf->mirrors = conf->mirrors_new;
4604 rdev2 = rcu_dereference(conf->mirrors[d].replacement);
4607 rdev2 = rcu_dereference(conf->mirrors[d].rdev);
4696 rdev = rcu_dereference(conf->mirrors[d].replacement);
4699 rdev = rcu_dereference(conf->mirrors[d].rdev);
4781 struct md_rdev *rdev = rcu_dereference(conf->mirrors[d].rdev);
4834 rdev = conf->mirrors[d].replacement;
4837 rdev = conf->mirrors[d].rdev;
4877 struct md_rdev *rdev = rcu_dereference(conf->mirrors[d].rdev);
4880 rdev = rcu_dereference(conf->mirrors[d].replacement);