Lines Matching refs:mirrors
270 rdev_dec_pending(conf->mirrors[i].rdev, r1_bio->mddev);
341 conf->mirrors[disk].head_position =
369 struct md_rdev *rdev = conf->mirrors[r1_bio->read_disk].rdev;
453 struct md_rdev *rdev = conf->mirrors[mirror].rdev;
593 * If there are 2 mirrors in the same 2 devices, performance degrades
645 rdev = rcu_dereference(conf->mirrors[disk].rdev);
712 dist = abs(this_sector - conf->mirrors[disk].head_position);
718 if (conf->mirrors[disk].next_seq_sect == this_sector
721 struct raid1_info *mirror = &conf->mirrors[disk];
776 rdev = rcu_dereference(conf->mirrors[best_disk].rdev);
782 if (conf->mirrors[best_disk].next_seq_sect != this_sector)
783 conf->mirrors[best_disk].seq_start = this_sector;
785 conf->mirrors[best_disk].next_seq_sect = this_sector + sectors;
1240 rdev = rcu_dereference(conf->mirrors[r1_bio->read_disk].rdev);
1281 mirror = conf->mirrors + rdisk;
1401 struct md_rdev *rdev = rcu_dereference(conf->mirrors[i].rdev);
1475 rdev_dec_pending(conf->mirrors[j].rdev, mddev);
1517 struct md_rdev *rdev = conf->mirrors[i].rdev;
1623 struct md_rdev *rdev = rcu_dereference(conf->mirrors[i].rdev);
1695 struct md_rdev *rdev = rcu_dereference(conf->mirrors[i].rdev);
1733 struct md_rdev *rdev = conf->mirrors[i].rdev;
1734 struct md_rdev *repl = conf->mirrors[conf->raid_disks + i].rdev;
1794 conf->mirrors[rdev->saved_raid_disk].rdev == NULL)
1798 p = conf->mirrors + mirror;
1822 p = conf->mirrors + repl_slot;
1840 struct raid1_info *p = conf->mirrors + number;
1846 p = conf->mirrors + conf->raid_disks + number;
1874 if (conf->mirrors[conf->raid_disks + number].rdev) {
1880 conf->mirrors[conf->raid_disks + number].rdev;
1895 conf->mirrors[conf->raid_disks + number].rdev = NULL;
1964 struct md_rdev *rdev = conf->mirrors[find_bio_disk(r1_bio, bio)].rdev;
1975 !is_badblock(conf->mirrors[r1_bio->read_disk].rdev,
2026 rdev = conf->mirrors[r1_bio->read_disk].rdev;
2052 rdev = conf->mirrors[d].rdev;
2076 rdev = conf->mirrors[d].rdev;
2105 rdev = conf->mirrors[d].rdev;
2120 rdev = conf->mirrors[d].rdev;
2160 bio_reset(b, conf->mirrors[i].rdev->bdev, REQ_OP_READ);
2163 conf->mirrors[i].rdev->data_offset;
2175 rdev_dec_pending(conf->mirrors[primary].rdev, mddev);
2213 rdev_dec_pending(conf->mirrors[i].rdev, mddev);
2247 if (test_bit(Faulty, &conf->mirrors[i].rdev->flags)) {
2253 if (test_bit(FailFast, &conf->mirrors[i].rdev->flags))
2258 md_sync_acct(conf->mirrors[i].rdev->bdev, bio_sectors(wbio));
2269 * 1. Retries failed read operations on working mirrors.
2293 rdev = rcu_dereference(conf->mirrors[d].rdev);
2317 struct md_rdev *rdev = conf->mirrors[read_disk].rdev;
2329 rdev = rcu_dereference(conf->mirrors[d].rdev);
2346 rdev = rcu_dereference(conf->mirrors[d].rdev);
2373 struct md_rdev *rdev = conf->mirrors[i].rdev;
2443 struct md_rdev *rdev = conf->mirrors[m].rdev;
2468 struct md_rdev *rdev = conf->mirrors[m].rdev;
2481 conf->mirrors[m].rdev);
2485 rdev_dec_pending(conf->mirrors[m].rdev,
2528 rdev = conf->mirrors[r1_bio->read_disk].rdev;
2764 rdev = rcu_dereference(conf->mirrors[i].rdev);
2834 struct md_rdev *rdev = conf->mirrors[i].rdev;
3000 conf->mirrors = kzalloc(array3_size(sizeof(struct raid1_info),
3003 if (!conf->mirrors)
3033 disk = conf->mirrors + mddev->raid_disks + disk_idx;
3035 disk = conf->mirrors + disk_idx;
3057 disk = conf->mirrors + i;
3094 kfree(conf->mirrors);
3152 if (conf->mirrors[i].rdev == NULL ||
3153 !test_bit(In_sync, &conf->mirrors[i].rdev->flags) ||
3154 test_bit(Faulty, &conf->mirrors[i].rdev->flags))
3171 pr_info("md/raid1:%s: active with %d out of %d mirrors\n",
3202 kfree(conf->mirrors);
3246 * 2/ resize conf->mirrors
3250 * Then resize conf->mirrors and swap in the new r1bio pool.
3285 if (conf->mirrors[d].rdev)
3319 struct md_rdev *rdev = conf->mirrors[d].rdev;
3331 kfree(conf->mirrors);
3332 conf->mirrors = newmirrors;