[DRBD-cvs] r1645 - trunk/drbd

svn at svn.drbd.org svn at svn.drbd.org
Tue Nov 16 20:00:54 CET 2004


Author: phil
Date: 2004-11-16 20:00:51 +0100 (Tue, 16 Nov 2004)
New Revision: 1645

Modified:
   trunk/drbd/drbd_main.c
   trunk/drbd/drbd_receiver.c
   trunk/drbd/drbd_worker.c
Log:
Changed the code to take into acount that the disk states 
are now: Inconsistent < Outdated < Consistent < UpToDate.



Modified: trunk/drbd/drbd_main.c
===================================================================
--- trunk/drbd/drbd_main.c	2004-11-16 17:31:10 UTC (rev 1644)
+++ trunk/drbd/drbd_main.c	2004-11-16 19:00:51 UTC (rev 1645)
@@ -474,7 +474,7 @@
 		if( !mdev->conf.two_primaries && 
 		    ns.s.role == Primary && ns.s.peer == Primary ) rv=-1;
 
-		if( ns.s.role == Primary && ns.s.disk < Consistent && 
+		if( ns.s.role == Primary && ns.s.disk <= Inconsistent && 
 		    ns.s.conn < Connected ) rv=-2;
 
 		if( ns.s.peer == Primary && ns.s.pdsk <= Inconsistent && 

Modified: trunk/drbd/drbd_receiver.c
===================================================================
--- trunk/drbd/drbd_receiver.c	2004-11-16 17:31:10 UTC (rev 1644)
+++ trunk/drbd/drbd_receiver.c	2004-11-16 19:00:51 UTC (rev 1645)
@@ -1204,7 +1204,7 @@
 	drbd_dump_md(mdev,p,0);
 	// INFO("have_good=%d sync=%d\n", have_good, sync);
 
-	if (have_good > 0 && mdev->state.s.disk < Consistent ) {
+	if (have_good > 0 && mdev->state.s.disk <= Inconsistent ) {
 		/* doh. I cannot become SyncSource when I am inconsistent!
 		 */
 		ERR("I shall become SyncSource, but I am inconsistent!\n");

Modified: trunk/drbd/drbd_worker.c
===================================================================
--- trunk/drbd/drbd_worker.c	2004-11-16 17:31:10 UTC (rev 1644)
+++ trunk/drbd/drbd_worker.c	2004-11-16 19:00:51 UTC (rev 1645)
@@ -229,7 +229,7 @@
 	smp_rmb();
 	if ( cancel ||
 	     mdev->state.s.conn < Connected ||
-	     mdev->state.s.pdsk < Consistent ) {
+	     mdev->state.s.pdsk <= Inconsistent ) {
 		drbd_panic("WE ARE LOST. Local IO failure, no peer.\n");
 
 		// does not make much sense, but anyways...



More information about the drbd-cvs mailing list