[kvm-unit-tests PATCH 17/32] arch-run: Fix handling multiple exit status messages
Andrew Jones
andrew.jones at linux.dev
Wed Feb 28 22:51:42 AEDT 2024
On Mon, Feb 26, 2024 at 08:12:03PM +1000, Nicholas Piggin wrote:
> 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 at redhat.com>
> Cc: Thomas Huth <thuth at redhat.com>
> Cc: Andrew Jones <andrew.jones at linux.dev>
> Cc: kvm at vger.kernel.org
> Signed-off-by: Nicholas Piggin <npiggin at 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
>
Acked-by: Andrew Jones <andrew.jones at linux.dev>
More information about the Linuxppc-dev
mailing list