Lines Matching refs:disk
111 /* Find first data disk in a raid6 stripe */
123 static inline int raid6_next_disk(int disk, int raid_disks)
125 disk++;
126 return (disk < raid_disks) ? disk : 0;
130 * We need to map each disk to a 'slot', where the data disks are slot
131 * 0 .. raid_disks-3, the parity disk is raid_disks-2 and the Q disk
1710 /* Q disk is one of the missing disks */
2910 * Output: index of the data and parity disk, and the sector # in them.
2945 * Select the parity disk based on the user selected algorithm.
3162 return 0; /* It is the Q disk */
3372 /* keep the parity disk(s) locked while asynchronous operations
3489 pr_debug("added bi b#%llu to stripe s#%llu, disk %d.\n",
3798 /* In max degraded raid6, If the failed disk is P, Q,
3799 * or we want to read the failed disk, we need to do
3841 * otherwise read it if the backing disk is insync
3848 * In the raid6 case if the only non-uptodate disk is P
3860 /* have disk failed, and we're requested to fetch it;
4388 /* we have 2-disk failure */
4427 "%s: disk%td not up to date\n",
4989 * be written back to disk
5058 * and raid disk), this is the clean up procedure so it is ready for
7157 struct disk_info *disk;
7308 disk = conf->disks + raid_disk;
7311 if (disk->replacement)
7313 disk->replacement = rdev;
7315 if (disk->rdev)
7317 disk->rdev = rdev;
7322 pr_info("md/raid:%s: device %s operational as raid disk %d\n",
7587 pr_warn("md/raid:%s: journal disk is missing, force array readonly\n",
7726 * discard data disk but write parity disk
7750 * discard_zeroes_data is 0); write one disk of the
7753 * parity); the disk is broken; The stripe data of this
7754 * disk is lost.
7829 pr_debug(" disk %d, o:%d, dev:%s\n",
7967 int disk;
8002 * find the disk ... but prefer rdev->saved_raid_disk
8011 for (disk = first; disk <= last; disk++) {
8012 p = conf->disks + disk;
8015 rdev->raid_disk = disk;
8016 if (rdev->saved_raid_disk != disk)
8025 for (disk = first; disk <= last; disk++) {
8026 p = conf->disks + disk;
8031 rdev->raid_disk = disk;