In SMP tests, it's possible for multiple CPUs to print an exit
message if they abort concurrently, confusing the harness:

  EXIT: STATUS=127

  EXIT: STATUS=127
  scripts/arch-run.bash: line 85: [: too many arguments
  scripts/arch-run.bash: line 93: return: too many arguments

lib/arch code should probably serialise this to prevent it, but
at the moment not all do. So make the parser handle this by
just looking at the first EXIT.

Cc: Paolo Bonzini <pbonz...@redhat.com>
Cc: Thomas Huth <th...@redhat.com>
Cc: Andrew Jones <andrew.jo...@linux.dev>
Cc: k...@vger.kernel.org
Signed-off-by: Nicholas Piggin <npig...@gmail.com>
---
 scripts/arch-run.bash | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/arch-run.bash b/scripts/arch-run.bash
index 5c7e72036..4af670f1c 100644
--- a/scripts/arch-run.bash
+++ b/scripts/arch-run.bash
@@ -79,7 +79,7 @@ run_qemu_status ()
        exec {stdout}>&-
 
        if [ $ret -eq 1 ]; then
-               testret=$(grep '^EXIT: ' <<<"$lines" | sed 
's/.*STATUS=\([0-9][0-9]*\).*/\1/')
+               testret=$(grep '^EXIT: ' <<<"$lines" | head -n1 | sed 
's/.*STATUS=\([0-9][0-9]*\).*/\1/')
                if [ "$testret" ]; then
                        if [ $testret -eq 1 ]; then
                                ret=0
-- 
2.42.0

Reply via email to