[DRBD-cvs] svn commit by phil - r2321 - trunk/drbd - Fixes an endless loop (with irq-lock spinlock...) in th

drbd-cvs at lists.linbit.com drbd-cvs at lists.linbit.com
Tue Aug 1 14:30:00 CEST 2006


Author: phil
Date: 2006-08-01 14:29:59 +0200 (Tue, 01 Aug 2006)
New Revision: 2321

Modified:
   trunk/drbd/drbd_worker.c
Log:
Fixes an endless loop (with irq-lock spinlock...) in the resync
dependency pause/resume code.


Modified: trunk/drbd/drbd_worker.c
===================================================================
--- trunk/drbd/drbd_worker.c	2006-08-01 10:35:23 UTC (rev 2320)
+++ trunk/drbd/drbd_worker.c	2006-08-01 12:29:59 UTC (rev 2321)
@@ -847,8 +847,7 @@
 		if ( odev->state.conn == SyncSource ||
 		     odev->state.conn == SyncTarget ) {
 			if (! _drbd_may_sync_now(odev)) {
-				_drbd_rs_pause(odev,AfterDependency);
-				rv = 1;
+				rv |= _drbd_rs_pause(odev,AfterDependency);
 			}
 		}
 	}
@@ -872,8 +871,7 @@
 		if ( odev->state.conn == PausedSyncS ||
 		     odev->state.conn == PausedSyncT ) {
 			if (_drbd_may_sync_now(odev)) {
-				_drbd_rs_resume(odev,AfterDependency);
-				rv = 1;
+				rv |= _drbd_rs_resume(odev,AfterDependency);
 			}
 		}
 	}



More information about the drbd-cvs mailing list