[dm-devel] [Patch 10 of 14] Device Mapper Mirror

Jonathan Brassow jbrassow at redhat.com
Tue Nov 7 16:06:38 UTC 2006


 brassow

This patch finishes off the previous patch of similar name, but the
patches giving the ability to requeue bios to core device-mapper
must be in place.

This patch requeues write requests if the log can not be updated.

Index: linux-2.6.18.1/drivers/md/dm-raid1.c
===================================================================
--- linux-2.6.18.1.orig/drivers/md/dm-raid1.c	2006-11-06 16:59:32.000000000 -0600
+++ linux-2.6.18.1/drivers/md/dm-raid1.c	2006-11-06 16:59:53.000000000 -0600
@@ -973,14 +973,12 @@ static void do_write(struct mirror_set *
 	struct io_region io[KCOPYD_MAX_REGIONS+1];
 	struct mirror *m;
 
-	/*
-	 * FIXME: Requeue I/O to dm-core
-	 * Otherwise, errors result if log device fails.
-	 * We cannot allow writes to continue if log device
-	 * is dead.
-	 */
 	if (log_failure) {
-		bio_endio(bio, bio->bi_size, -EIO);
+		/*
+		 * Requeue I/O to dm-core.  We cannot allow
+		 * writes to continue if log device is dead.
+		 */
+		bio_endio(bio, bio->bi_size, DM_ENDIO_REQUEUE);
 		return;
 	}
 





More information about the dm-devel mailing list