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 <pbonzini@xxxxxxxxxx> Cc: Thomas Huth <thuth@xxxxxxxxxx> Cc: Andrew Jones <andrew.jones@xxxxxxxxx> Cc: kvm@xxxxxxxxxxxxxxx Signed-off-by: Nicholas Piggin <npiggin@xxxxxxxxx> --- 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