The previous attempt has correct diagnosis, but added -notransfer flag
in a wrong place - it should be used in the first (outer) match out of
two, not the second (inner) one.

Fixes: 1e12cbd6af2c ("CI: fix waiting for final test message")
Signed-off-by: Marek Marczykowski-Górecki <marma...@invisiblethingslab.com>
---
This actually fixes the issue described in the referenced commit. When
that issue happens, it can be seen as a complete console output (up to
Alpine login prompt), but test still failed.
But that is not all the issues, sometimes it hangs really in the middle
of dom0 boot, for example with last lines as:

    [    1.816052] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
    Poking KASLR using RDRAND RDTSC...
    [    1.818089] Dynamic Preempt: voluntary
    [    1.818251] rcu: Preemptible hierarchical RCU implementation.
    [    1.818254] rcu:         RCU event tracing is ena

and sits there for over 120s.

It's unclear to me yet whether it's a real dom0 hang, or an issue with
grabbing console output. Debugging...
---
 automation/scripts/console.exp | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/automation/scripts/console.exp b/automation/scripts/console.exp
index bdb1dd982003..fc80513dfb35 100755
--- a/automation/scripts/console.exp
+++ b/automation/scripts/console.exp
@@ -60,12 +60,12 @@ if {[info exists env(WAKEUP_CMD)]} {
 
 if {[info exists env(LOG_MSG)]} {
     expect {
-        -re "$env(PASSED)" {
-            expect -notransfer -re "$env(LOG_MSG)"
+        -notransfer -re "$env(PASSED)" {
+            expect -re "$env(LOG_MSG)"
             exit 0
         }
-        -re "$env(LOG_MSG)" {
-            expect -notransfer -re "$env(PASSED)"
+        -notransfer -re "$env(LOG_MSG)" {
+            expect -re "$env(PASSED)"
             exit 0
         }
     }
-- 
2.48.1


Reply via email to