[PATCH] CI: fix waiting for final test message (again)

Marek Marczykowski-Górecki posted 1 patch 6 months, 3 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://gitlab.com/xen-project/patchew/xen tags/patchew/20250413134826.1366350-1-marmarek@invisiblethingslab.com
automation/scripts/console.exp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
[PATCH] CI: fix waiting for final test message (again)
Posted by Marek Marczykowski-Górecki 6 months, 3 weeks ago
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 <marmarek@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


Re: [PATCH] CI: fix waiting for final test message (again)
Posted by Andrew Cooper 6 months, 2 weeks ago
On 13/04/2025 2:47 pm, Marek Marczykowski-Górecki wrote:
> 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 <marmarek@invisiblethingslab.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.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...

This is now the only failure I've been encountering, given the extensive
runs over the weekend.

~Andrew