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

jbrassow at sourceware.org jbrassow at sourceware.org
Tue Dec 5 15:08:19 UTC 2006


CVSROOT:	/cvs/cluster
Module name:	cluster
Branch: 	RHEL4
Changes by:	jbrassow at sourceware.org	2006-12-05 15:08:18

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

Log message:
	Bug 214487: "Attempt to mark a already marked region" messages when ...
	
	Similar to the last checkin.  When a log server moved, all entries in
	the clear region list were removed rather than just those that where
	associated with the log that moved.  Again, this would cause the server
	to report that the regions where already marked when the next mark
	request would come in.
	
	I believe that this action was harmless (but annoying).

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.30&r2=1.1.2.31

--- cluster/cmirror-kernel/src/Attic/dm-cmirror-client.c	2006/12/05 03:13:50	1.1.2.30
+++ cluster/cmirror-kernel/src/Attic/dm-cmirror-client.c	2006/12/05 15:08:17	1.1.2.31
@@ -503,11 +503,14 @@
 			DMINFO(" - Wiping clear region list");
 			list_for_each_entry_safe(rs, tmp_rs,
 						 &clear_region_list, rs_list){
+				/* Remove only those associated with referenced log */
+				if (rs->rs_lc != lc)
+					continue;
 				i++;
 				list_del_init(&rs->rs_list);
 				mempool_free(rs, region_state_pool);
 			}
-			clear_region_count=0;
+			clear_region_count -= i;
 			DMINFO(" - %d clear region requests wiped", i);
 
 			DMINFO(" - Resending all mark region requests");




More information about the Cluster-devel mailing list