Mesa (master): ci/bare-metal: Retry booting chezas instead of failing when !POWER_GOOD

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Aug 21 20:28:03 UTC 2020


Module: Mesa
Branch: master
Commit: c27075e9e15d114ceec1f51a2882ef3700652c0c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c27075e9e15d114ceec1f51a2882ef3700652c0c

Author: Eric Anholt <eric at anholt.net>
Date:   Wed Aug 19 16:28:27 2020 -0700

ci/bare-metal: Retry booting chezas instead of failing when !POWER_GOOD

If we get this error, we can just try rebooting again and see if it comes
up then.  The POWER_GOOD failures are clustered in time, but it's better
to retry a few times in a row in one job (which has its own 60min timeout)
than to spuriously fail someone's pipeline.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6398>

---

 .gitlab-ci/bare-metal/cros_servo_run.py | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci/bare-metal/cros_servo_run.py b/.gitlab-ci/bare-metal/cros_servo_run.py
index 0c43419854f..976371d18af 100755
--- a/.gitlab-ci/bare-metal/cros_servo_run.py
+++ b/.gitlab-ci/bare-metal/cros_servo_run.py
@@ -55,8 +55,12 @@ class CrosServoRun:
         for line in self.cpu_ser.lines():
             if re.match("---. end Kernel panic", line):
                 return 1
+
+            # The Cheza boards have issues with failing to bring up power to
+            # the system sometimes, possibly dependent on ambient temperature
+            # in the farm.
             if re.match("POWER_GOOD not seen in time", line):
-                return 1
+                return 2
 
             result = re.match("bare-metal result: (\S*)", line)
             if result:
@@ -76,7 +80,10 @@ def main():
 
     servo = CrosServoRun(args.cpu, args.ec)
 
-    retval = servo.run()
+    while True:
+        retval = servo.run()
+        if retval != 2:
+            break
 
     # power down the CPU on the device
     servo.ec_write("power off\n")



More information about the mesa-commit mailing list