[PATCH-for-10.0 v2 04/14] tests/qtest: Skip Aarch64 VMapple machine

Philippe Mathieu-Daudé posted 14 patches 7 months, 2 weeks ago
[PATCH-for-10.0 v2 04/14] tests/qtest: Skip Aarch64 VMapple machine
Posted by Philippe Mathieu-Daudé 7 months, 2 weeks ago
First, the VMapple machine only works with the ARM 'host' CPU
type, which isn't accepted for QTest:

  $ qemu-system-aarch64 -M vmapple -accel qtest
  qemu-system-aarch64: The 'host' CPU type can only be used with KVM or HVF

Second, the QTest framework expects machines to be createable
without specifying optional arguments, however the VMapple
machine requires few of them:

  $ qemu-system-aarch64 -M vmapple -accel qtest
  qemu-system-aarch64: No firmware specified

  $ qemu-system-aarch64 -M vmapple -accel qtest -bios /dev/null
  qemu-system-aarch64: No AUX device. Please specify one as pflash drive.

Restrict this machine with QTest so we can at least run check-qtest,
otherwise we get:

  $ make check-qtest-aarch64
  qemu-system-aarch64: The 'host' CPU type can only be used with KVM or HVF
  Broken pipe
  ../tests/qtest/libqtest.c:199: kill_qemu() tried to terminate QEMU process but encountered exit status 1 (expected 0)
  ...
   7/26 qemu:qtest+qtest-aarch64 / qtest-aarch64/test-hmp     ERROR      24.71s   killed by signal 6 SIGABRT
   2/26 qemu:qtest+qtest-aarch64 / qtest-aarch64/qom-test     ERROR      71.23s   killed by signal 6 SIGABRT

Suggested-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 tests/qtest/libqtest.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
index 2750067861e..fad307d125a 100644
--- a/tests/qtest/libqtest.c
+++ b/tests/qtest/libqtest.c
@@ -1788,6 +1788,7 @@ void qtest_cb_for_every_machine(void (*cb)(const char *machine),
         if (!strncmp("xenfv", machines[i].name, 5) ||
             g_str_equal("xenpv", machines[i].name) ||
             g_str_equal("xenpvh", machines[i].name) ||
+            g_str_equal("vmapple", machines[i].name) ||
             g_str_equal("nitro-enclave", machines[i].name)) {
             continue;
         }
-- 
2.47.1


Re: [PATCH-for-10.0 v2 04/14] tests/qtest: Skip Aarch64 VMapple machine
Posted by Thomas Huth 7 months, 2 weeks ago
On 03/04/2025 17.18, Philippe Mathieu-Daudé wrote:
> First, the VMapple machine only works with the ARM 'host' CPU
> type, which isn't accepted for QTest:
> 
>    $ qemu-system-aarch64 -M vmapple -accel qtest
>    qemu-system-aarch64: The 'host' CPU type can only be used with KVM or HVF
> 
> Second, the QTest framework expects machines to be createable
> without specifying optional arguments, however the VMapple
> machine requires few of them:
> 
>    $ qemu-system-aarch64 -M vmapple -accel qtest
>    qemu-system-aarch64: No firmware specified
> 
>    $ qemu-system-aarch64 -M vmapple -accel qtest -bios /dev/null
>    qemu-system-aarch64: No AUX device. Please specify one as pflash drive.
> 
> Restrict this machine with QTest so we can at least run check-qtest,
> otherwise we get:
> 
>    $ make check-qtest-aarch64
>    qemu-system-aarch64: The 'host' CPU type can only be used with KVM or HVF
>    Broken pipe
>    ../tests/qtest/libqtest.c:199: kill_qemu() tried to terminate QEMU process but encountered exit status 1 (expected 0)
>    ...
>     7/26 qemu:qtest+qtest-aarch64 / qtest-aarch64/test-hmp     ERROR      24.71s   killed by signal 6 SIGABRT
>     2/26 qemu:qtest+qtest-aarch64 / qtest-aarch64/qom-test     ERROR      71.23s   killed by signal 6 SIGABRT
> 
> Suggested-by: Fabiano Rosas <farosas@suse.de>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   tests/qtest/libqtest.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
> index 2750067861e..fad307d125a 100644
> --- a/tests/qtest/libqtest.c
> +++ b/tests/qtest/libqtest.c
> @@ -1788,6 +1788,7 @@ void qtest_cb_for_every_machine(void (*cb)(const char *machine),
>           if (!strncmp("xenfv", machines[i].name, 5) ||
>               g_str_equal("xenpv", machines[i].name) ||
>               g_str_equal("xenpvh", machines[i].name) ||
> +            g_str_equal("vmapple", machines[i].name) ||
>               g_str_equal("nitro-enclave", machines[i].name)) {
>               continue;
>           }

Reviewed-by: Thomas Huth <thuth@redhat.com>


Re: [PATCH-for-10.0 v2 04/14] tests/qtest: Skip Aarch64 VMapple machine
Posted by Richard Henderson 7 months, 2 weeks ago
On 4/3/25 08:18, Philippe Mathieu-Daudé wrote:
> First, the VMapple machine only works with the ARM 'host' CPU
> type, which isn't accepted for QTest:
> 
>    $ qemu-system-aarch64 -M vmapple -accel qtest
>    qemu-system-aarch64: The 'host' CPU type can only be used with KVM or HVF
> 
> Second, the QTest framework expects machines to be createable
> without specifying optional arguments, however the VMapple
> machine requires few of them:
> 
>    $ qemu-system-aarch64 -M vmapple -accel qtest
>    qemu-system-aarch64: No firmware specified
> 
>    $ qemu-system-aarch64 -M vmapple -accel qtest -bios /dev/null
>    qemu-system-aarch64: No AUX device. Please specify one as pflash drive.
> 
> Restrict this machine with QTest so we can at least run check-qtest,
> otherwise we get:
> 
>    $ make check-qtest-aarch64
>    qemu-system-aarch64: The 'host' CPU type can only be used with KVM or HVF
>    Broken pipe
>    ../tests/qtest/libqtest.c:199: kill_qemu() tried to terminate QEMU process but encountered exit status 1 (expected 0)
>    ...
>     7/26 qemu:qtest+qtest-aarch64 / qtest-aarch64/test-hmp     ERROR      24.71s   killed by signal 6 SIGABRT
>     2/26 qemu:qtest+qtest-aarch64 / qtest-aarch64/qom-test     ERROR      71.23s   killed by signal 6 SIGABRT
> 
> Suggested-by: Fabiano Rosas <farosas@suse.de>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   tests/qtest/libqtest.c | 1 +
>   1 file changed, 1 insertion(+)


Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~

> 
> diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
> index 2750067861e..fad307d125a 100644
> --- a/tests/qtest/libqtest.c
> +++ b/tests/qtest/libqtest.c
> @@ -1788,6 +1788,7 @@ void qtest_cb_for_every_machine(void (*cb)(const char *machine),
>           if (!strncmp("xenfv", machines[i].name, 5) ||
>               g_str_equal("xenpv", machines[i].name) ||
>               g_str_equal("xenpvh", machines[i].name) ||
> +            g_str_equal("vmapple", machines[i].name) ||
>               g_str_equal("nitro-enclave", machines[i].name)) {
>               continue;
>           }