This can result in bad pushes.  Better to wait.

Signed-off-by: Ian Jackson <i...@xenproject.org>
---
 ts-hosts-allocate-Executive | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/ts-hosts-allocate-Executive b/ts-hosts-allocate-Executive
index 849bc97b..4dfcd0cd 100755
--- a/ts-hosts-allocate-Executive
+++ b/ts-hosts-allocate-Executive
@@ -704,6 +704,7 @@ sub hid_recurse ($$) {
            Selections => [ map { $_->{Selected} } @hids ],
            Start => $start_time,
            Duration => $duration,
+           PrevFail => ($previously_failed || $previously_failed_equiv),
        };
     }
 }
@@ -951,7 +952,11 @@ sub attempt_allocation {
            }
            $starvation_q->finish();
            if ($all_starving) {
-               return $alloc_starved_r;
+               if (!$best->{PrevFail}) {
+                   return $alloc_starved_r;
+               } else {
+                   logm "starving, but previously failed, so continue...";
+               }
            }
        }
     }
-- 
2.20.1


Reply via email to