[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[Cluster-devel] cluster/cmirror-kernel/src dm-cmirror-client.c



CVSROOT:	/cvs/cluster
Module name:	cluster
Branch: 	RHEL4
Changes by:	jbrassow sourceware org	2006-12-05 17:49:08

Modified files:
	cmirror-kernel/src: dm-cmirror-client.c 

Log message:
	Just a comment update, so I don't forget why I'm checking for
	duplicate mark region requests.
	
	<       /* ATTENTION -- this check should not be necessary.   **
	<       ** Why are regions being marked again before a clear? */
	---
	>       /*
	>        * In the mirroring code, it is possible for a write
	>        * to complete and call rh_dec - putting the region on
	>        * the clear_region list.  However, before the actual
	>        * clear request is issued to the log (rh_update_states)
	>        * another mark happens.  So, we check for and remove
	>        * duplicates.
	>        */

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/cmirror-kernel/src/dm-cmirror-client.c.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.1.2.31&r2=1.1.2.32

--- cluster/cmirror-kernel/src/Attic/dm-cmirror-client.c	2006/12/05 15:08:17	1.1.2.31
+++ cluster/cmirror-kernel/src/Attic/dm-cmirror-client.c	2006/12/05 17:49:08	1.1.2.32
@@ -918,8 +918,14 @@
 			return;
 		}
 	}
-	/* ATTENTION -- this check should not be necessary.   **
-	** Why are regions being marked again before a clear? */
+	/*
+	 * In the mirroring code, it is possible for a write
+	 * to complete and call rh_dec - putting the region on
+	 * the clear_region list.  However, before the actual
+	 * clear request is issued to the log (rh_update_states)
+	 * another mark happens.  So, we check for and remove
+	 * duplicates.
+	 */
 	list_for_each_entry(rs, &marked_region_list, rs_list){
 		if(lc == rs->rs_lc && region == rs->rs_region){
 #ifdef DEBUG


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]