[dm-devel] [PATCH] DM snapshot missing failure condition back-out

Jonathan Brassow jbrassow at redhat.com
Wed Aug 26 15:19:38 UTC 2009


While initializing the snapshot module, if we fail to register
the snapshot target then we must back-out the exception store
module initialization.

Signed-off-by: Jonathan Brassow <jbrassow at redhat.com>

Index: linux-2.6/drivers/md/dm-snap.c
===================================================================
--- linux-2.6.orig/drivers/md/dm-snap.c
+++ linux-2.6/drivers/md/dm-snap.c
@@ -1446,7 +1446,7 @@ static int __init dm_snapshot_init(void)
 	r = dm_register_target(&snapshot_target);
 	if (r) {
 		DMERR("snapshot target register failed %d", r);
-		return r;
+		goto bad_register_target;
 	}
 
 	r = dm_register_target(&origin_target);
@@ -1503,6 +1503,9 @@ bad2:
 	dm_unregister_target(&origin_target);
 bad1:
 	dm_unregister_target(&snapshot_target);
+
+bad_register_target:
+	dm_exception_store_exit();
 	return r;
 }
 





More information about the dm-devel mailing list