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

[dm-devel] dm-multipath: failback problem.



If the failback period is set to more that four times the polling interval,
paths will never fail back. This is because the failback_tick keeps getting
reet. The attached patch fixes this.
diff -urpN mp-devel-clean/multipathd/main.c mp-devel-patched/multipathd/main.c
--- mp-devel-clean/multipathd/main.c	2006-02-15 15:26:13.000000000 -0600
+++ mp-devel-patched/multipathd/main.c	2006-02-15 17:48:56.000000000 -0600
@@ -1265,7 +1265,8 @@ checkerloop (void *ap)
 			pathinfo(pp, conf->hwtable, DI_PRIO);
 
 			if (need_switch_pathgroup(pp->mpp, 0)) {
-				if (pp->mpp->pgfailback > 0)
+				if (pp->mpp->pgfailback > 0 &&
+				    pp->mpp->failback_tick <= 0)
 					pp->mpp->failback_tick =
 						pp->mpp->pgfailback + 1;
 				else if (pp->mpp->pgfailback ==

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