summary refs log tree commit diff
path: root/drivers
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2006-01-06 00:20:25 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-06 08:34:04 -0800
commit18f08819f42b647783e4f6ea99141623881bf182 (patch)
tree062f5b77cd2593239af5e8aa720f20781dc8d80e /drivers
parent9910f16af35419a5382fa7850eecc220103036fa (diff)
downloadlinux-18f08819f42b647783e4f6ea99141623881bf182.tar.gz
[PATCH] md: support check-without-repair of raid10 arrays
Also keep count on the number of errors found.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/md/raid10.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
index 8f58a447d9f0..1fa70c34b7d2 100644
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@ -1206,6 +1206,10 @@ static void sync_request_write(mddev_t *mddev, r10bio_t *r10_bio)
 				break;
 		if (j == vcnt)
 			continue;
+		mddev->resync_mismatches += r10_bio->sectors;
+		if (test_bit(MD_RECOVERY_CHECK, &mddev->recovery))
+			/* Don't fix anything. */
+			continue;
 		/* Ok, we need to write this bio
 		 * First we need to fixup bv_offset, bv_len and
 		 * bi_vecs, as the read request might have corrupted these