From: Andrew Jones <andrew.jones@linux.dev>
To: Alexandru Elisei <alexandru.elisei@arm.com>
Cc: eric.auger@redhat.com, lvivier@redhat.com, thuth@redhat.com,
frankja@linux.ibm.com, imbrenda@linux.ibm.com,
nrb@linux.ibm.com, david@redhat.com, pbonzini@redhat.com,
kvm@vger.kernel.org, kvmarm@lists.linux.dev,
linuxppc-dev@lists.ozlabs.org, kvm-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, will@kernel.org,
julien.thierry.kdev@gmail.com, maz@kernel.org,
oliver.upton@linux.dev, suzuki.poulose@arm.com,
yuzenghui@huawei.com, joey.gouly@arm.com,
andre.przywara@arm.com
Subject: Re: [kvm-unit-tests PATCH v2 08/18] scripts/runtime: Detect kvmtool failure in premature_failure()
Date: Tue, 21 Jan 2025 17:29:04 +0100 [thread overview]
Message-ID: <20250121-ec03a2683ab979d2313e09ee@orel> (raw)
In-Reply-To: <20250120164316.31473-9-alexandru.elisei@arm.com>
On Mon, Jan 20, 2025 at 04:43:06PM +0000, Alexandru Elisei wrote:
> kvm-unit-tests assumes that if the VMM is able to get to where it tries to
> load the kernel, then the VMM and the configuration parameters will also
> work for running the test. All of this is done in premature_failure().
>
> Teach premature_failure() about the kvmtool's error message when it fails
> to load the dummy kernel.
>
> Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
> ---
> scripts/runtime.bash | 21 +++++++++++++++------
> 1 file changed, 15 insertions(+), 6 deletions(-)
>
> diff --git a/scripts/runtime.bash b/scripts/runtime.bash
> index 451b5585f010..ee8a188b22ce 100644
> --- a/scripts/runtime.bash
> +++ b/scripts/runtime.bash
> @@ -12,18 +12,27 @@ extract_summary()
> tail -5 | grep '^SUMMARY: ' | sed 's/^SUMMARY: /(/;s/'"$cr"'\{0,1\}$/)/'
> }
>
> -# We assume that QEMU is going to work if it tried to load the kernel
> +# We assume that the VMM is going to work if it tried to load the kernel
> premature_failure()
> {
> local log
>
> log="$(eval "$(get_cmdline _NO_FILE_4Uhere_)" 2>&1)"
>
> - echo "$log" | grep "_NO_FILE_4Uhere_" |
> - grep -q -e "[Cc]ould not \(load\|open\) kernel" \
> - -e "error loading" \
> - -e "failed to load" &&
> - return 1
> + case "$TARGET" in
> + qemu)
> +
extra blank line here
> + echo "$log" | grep "_NO_FILE_4Uhere_" |
> + grep -q -e "[Cc]ould not \(load\|open\) kernel" \
> + -e "error loading" \
> + -e "failed to load" &&
> + return 1
> + ;;
> + kvmtool)
> + echo "$log" | grep "Fatal: Unable to open kernel _NO_FILE_4Uhere_" &&
> + return 1
> + ;;
> + esac
This looks good, but could possibly become
eval echo "$log" | ${vmm_opts[$TARGET,premature_failure]} && return 1
if we got the vmm_opts route.
Thanks,
drew
>
> RUNTIME_log_stderr <<< "$log"
>
> --
> 2.47.1
>
>
> --
> kvm-riscv mailing list
> kvm-riscv@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/kvm-riscv
--
kvm-riscv mailing list
kvm-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kvm-riscv
WARNING: multiple messages have this Message-ID (diff)
From: Andrew Jones <andrew.jones@linux.dev>
To: Alexandru Elisei <alexandru.elisei@arm.com>
Cc: eric.auger@redhat.com, lvivier@redhat.com, thuth@redhat.com,
frankja@linux.ibm.com, imbrenda@linux.ibm.com,
nrb@linux.ibm.com, david@redhat.com, pbonzini@redhat.com,
kvm@vger.kernel.org, kvmarm@lists.linux.dev,
linuxppc-dev@lists.ozlabs.org, kvm-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, will@kernel.org,
julien.thierry.kdev@gmail.com, maz@kernel.org,
oliver.upton@linux.dev, suzuki.poulose@arm.com,
yuzenghui@huawei.com, joey.gouly@arm.com,
andre.przywara@arm.com
Subject: Re: [kvm-unit-tests PATCH v2 08/18] scripts/runtime: Detect kvmtool failure in premature_failure()
Date: Tue, 21 Jan 2025 17:29:04 +0100 [thread overview]
Message-ID: <20250121-ec03a2683ab979d2313e09ee@orel> (raw)
In-Reply-To: <20250120164316.31473-9-alexandru.elisei@arm.com>
On Mon, Jan 20, 2025 at 04:43:06PM +0000, Alexandru Elisei wrote:
> kvm-unit-tests assumes that if the VMM is able to get to where it tries to
> load the kernel, then the VMM and the configuration parameters will also
> work for running the test. All of this is done in premature_failure().
>
> Teach premature_failure() about the kvmtool's error message when it fails
> to load the dummy kernel.
>
> Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
> ---
> scripts/runtime.bash | 21 +++++++++++++++------
> 1 file changed, 15 insertions(+), 6 deletions(-)
>
> diff --git a/scripts/runtime.bash b/scripts/runtime.bash
> index 451b5585f010..ee8a188b22ce 100644
> --- a/scripts/runtime.bash
> +++ b/scripts/runtime.bash
> @@ -12,18 +12,27 @@ extract_summary()
> tail -5 | grep '^SUMMARY: ' | sed 's/^SUMMARY: /(/;s/'"$cr"'\{0,1\}$/)/'
> }
>
> -# We assume that QEMU is going to work if it tried to load the kernel
> +# We assume that the VMM is going to work if it tried to load the kernel
> premature_failure()
> {
> local log
>
> log="$(eval "$(get_cmdline _NO_FILE_4Uhere_)" 2>&1)"
>
> - echo "$log" | grep "_NO_FILE_4Uhere_" |
> - grep -q -e "[Cc]ould not \(load\|open\) kernel" \
> - -e "error loading" \
> - -e "failed to load" &&
> - return 1
> + case "$TARGET" in
> + qemu)
> +
extra blank line here
> + echo "$log" | grep "_NO_FILE_4Uhere_" |
> + grep -q -e "[Cc]ould not \(load\|open\) kernel" \
> + -e "error loading" \
> + -e "failed to load" &&
> + return 1
> + ;;
> + kvmtool)
> + echo "$log" | grep "Fatal: Unable to open kernel _NO_FILE_4Uhere_" &&
> + return 1
> + ;;
> + esac
This looks good, but could possibly become
eval echo "$log" | ${vmm_opts[$TARGET,premature_failure]} && return 1
if we got the vmm_opts route.
Thanks,
drew
>
> RUNTIME_log_stderr <<< "$log"
>
> --
> 2.47.1
>
>
> --
> kvm-riscv mailing list
> kvm-riscv@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/kvm-riscv
next prev parent reply other threads:[~2025-01-21 16:29 UTC|newest]
Thread overview: 102+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-20 16:42 [kvm-unit-tests PATCH v2 00/18] arm/arm64: Add kvmtool to the runner script Alexandru Elisei
2025-01-20 16:42 ` Alexandru Elisei
2025-01-20 16:42 ` [kvm-unit-tests PATCH v2 01/18] run_tests: Document --probe-maxsmp argument Alexandru Elisei
2025-01-20 16:42 ` Alexandru Elisei
2025-01-21 14:41 ` Andrew Jones
2025-01-21 14:41 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 02/18] Document environment variables Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 14:41 ` Andrew Jones
2025-01-21 14:41 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 03/18] scripts: Refuse to run the tests if not configured for qemu Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 14:48 ` Andrew Jones
2025-01-21 14:48 ` Andrew Jones
2025-01-21 15:54 ` Alexandru Elisei
2025-01-21 15:54 ` Alexandru Elisei
2025-01-21 16:17 ` Andrew Jones
2025-01-21 16:17 ` Andrew Jones
2025-01-21 16:20 ` Alexandru Elisei
2025-01-21 16:20 ` Alexandru Elisei
2025-02-10 10:41 ` Alexandru Elisei
2025-02-10 10:41 ` Alexandru Elisei
2025-02-10 13:56 ` Andrew Jones
2025-02-10 13:56 ` Andrew Jones
2025-02-10 18:04 ` Alexandru Elisei
2025-02-10 18:04 ` Alexandru Elisei
2025-02-17 16:02 ` Al Dunsmuir
2025-02-17 16:02 ` Al Dunsmuir
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 04/18] run_tests: Introduce unittest parameter 'qemu_params' Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 15:46 ` Andrew Jones
2025-01-21 15:46 ` Andrew Jones
2025-02-12 13:40 ` Alexandru Elisei
2025-02-12 13:40 ` Alexandru Elisei
2025-02-12 15:48 ` Andrew Jones
2025-02-12 15:48 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 05/18] scripts: Rename run_qemu_status -> run_test_status Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 15:55 ` Andrew Jones
2025-01-21 15:55 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 06/18] scripts: Merge the qemu parameter -smp into $qemu_opts Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 16:12 ` Andrew Jones
2025-01-21 16:12 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 07/18] scripts: Introduce kvmtool_opts Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 16:24 ` Andrew Jones
2025-01-21 16:24 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 08/18] scripts/runtime: Detect kvmtool failure in premature_failure() Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 16:29 ` Andrew Jones [this message]
2025-01-21 16:29 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 09/18] scripts/runtime: Skip test when kvmtool and $accel is not KVM Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 16:30 ` Andrew Jones
2025-01-21 16:30 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 10/18] scripts/arch-run: Add support for kvmtool Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 16:46 ` Andrew Jones
2025-01-21 16:46 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 11/18] arm/run: " Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-21 16:50 ` Andrew Jones
2025-01-21 16:50 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 12/18] scripts/runtime: Add default arguments " Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-23 14:07 ` Andrew Jones
2025-01-23 14:07 ` Andrew Jones
2025-01-23 14:20 ` Alexandru Elisei
2025-01-23 14:20 ` Alexandru Elisei
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 13/18] run_tests: Do not probe for maximum number of VCPUs when using kvmtool Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-23 15:36 ` Andrew Jones
2025-01-23 15:36 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 14/18] run_tests: Add KVMTOOL environment variable for kvmtool binary path Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-23 15:43 ` Andrew Jones
2025-01-23 15:43 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 15/18] Add kvmtool_params to test specification Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-23 15:53 ` Andrew Jones
2025-01-23 15:53 ` Andrew Jones
2025-02-11 15:03 ` Alexandru Elisei
2025-02-11 15:03 ` Alexandru Elisei
2025-02-12 15:56 ` Andrew Jones
2025-02-12 15:56 ` Andrew Jones
2025-02-12 16:34 ` Alexandru Elisei
2025-02-12 16:34 ` Alexandru Elisei
2025-02-13 13:59 ` Andrew Jones
2025-02-13 13:59 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 16/18] scripts/mkstandalone: Export $TARGET Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-23 15:53 ` Andrew Jones
2025-01-23 15:53 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 17/18] unittest: Add disabled_if parameter and use it for kvmtool Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-23 16:08 ` Andrew Jones
2025-01-23 16:08 ` Andrew Jones
2025-01-20 16:43 ` [kvm-unit-tests PATCH v2 18/18] run_tests: Enable kvmtool Alexandru Elisei
2025-01-20 16:43 ` Alexandru Elisei
2025-01-23 16:12 ` Andrew Jones
2025-01-23 16:12 ` Andrew Jones
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250121-ec03a2683ab979d2313e09ee@orel \
--to=andrew.jones@linux.dev \
--cc=alexandru.elisei@arm.com \
--cc=andre.przywara@arm.com \
--cc=david@redhat.com \
--cc=eric.auger@redhat.com \
--cc=frankja@linux.ibm.com \
--cc=imbrenda@linux.ibm.com \
--cc=joey.gouly@arm.com \
--cc=julien.thierry.kdev@gmail.com \
--cc=kvm-riscv@lists.infradead.org \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.linux.dev \
--cc=linux-s390@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=lvivier@redhat.com \
--cc=maz@kernel.org \
--cc=nrb@linux.ibm.com \
--cc=oliver.upton@linux.dev \
--cc=pbonzini@redhat.com \
--cc=suzuki.poulose@arm.com \
--cc=thuth@redhat.com \
--cc=will@kernel.org \
--cc=yuzenghui@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.