[Cluster-devel] cluster/cmirror-kernel/src dm-cmirror-client.c
jbrassow at sourceware.org
jbrassow at sourceware.org
Tue Dec 5 17:49:10 UTC 2006
CVSROOT: /cvs/cluster
Module name: cluster
Branch: RHEL4
Changes by: jbrassow at 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
More information about the Cluster-devel
mailing list