[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH v2 15/19] tests: device-introspect-test: cope with ARM TCG-on
From: |
Fabiano Rosas |
Subject: |
[RFC PATCH v2 15/19] tests: device-introspect-test: cope with ARM TCG-only devices |
Date: |
Mon, 9 Jan 2023 19:42:28 -0300 |
From: Claudio Fontana <cfontana@suse.de>
Skip the test_device_intro_concrete for now for ARM KVM-only build,
as on ARM we currently build devices for ARM that are not
compatible with a KVM-only build.
We can remove this workaround when we fix this in KConfig etc,
and we only list and build machines that are compatible with KVM
for KVM-only builds.
Alternative implementation provided by Alex.
Suggested-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Claudio Fontana <cfontana@suse.de>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Cc: Thomas Huth <thuth@redhat.com>
Cc: Laurent Vivier <lvivier@redhat.com>
---
tests/qtest/device-introspect-test.c | 32 +++++++++++++++++++++++-----
1 file changed, 27 insertions(+), 5 deletions(-)
diff --git a/tests/qtest/device-introspect-test.c
b/tests/qtest/device-introspect-test.c
index 5b0ffe43f5..f89df87f74 100644
--- a/tests/qtest/device-introspect-test.c
+++ b/tests/qtest/device-introspect-test.c
@@ -304,6 +304,24 @@ static void test_abstract_interfaces(void)
qtest_quit(qts);
}
+/*
+ * XXX currently we build also boards for ARM that are incompatible with KVM.
+ * We therefore need to check this explicitly, and only test virt for kvm-only
+ * arm builds.
+ * After we do the work of Kconfig etc to ensure that only KVM-compatible
boards
+ * are built for the kvm-only build, we could remove this.
+ */
+static bool skip_machine_tests(void)
+{
+#ifndef CONFIG_TCG
+ const char *arch = qtest_get_arch();
+ if (strcmp(arch, "arm") == 0 || strcmp(arch, "aarch64") == 0) {
+ return true;
+ }
+#endif /* !CONFIG_TCG */
+ return false;
+}
+
static void add_machine_test_case(const char *mname)
{
char *path, *args;
@@ -328,11 +346,15 @@ int main(int argc, char **argv)
qtest_add_func("device/introspect/none", test_device_intro_none);
qtest_add_func("device/introspect/abstract", test_device_intro_abstract);
qtest_add_func("device/introspect/abstract-interfaces",
test_abstract_interfaces);
- if (g_test_quick()) {
- qtest_add_data_func("device/introspect/concrete/defaults/none",
- g_strdup(common_args), test_device_intro_concrete);
- } else {
- qtest_cb_for_every_machine(add_machine_test_case, true);
+
+ if (!skip_machine_tests()) {
+ if (g_test_quick()) {
+ qtest_add_data_func("device/introspect/concrete/defaults/none",
+ g_strdup(common_args),
+ test_device_intro_concrete);
+ } else {
+ qtest_cb_for_every_machine(add_machine_test_case, true);
+ }
}
return g_test_run();
--
2.35.3
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, (continued)
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Peter Maydell, 2023/01/10
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Fabiano Rosas, 2023/01/10
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Peter Maydell, 2023/01/10
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Claudio Fontana, 2023/01/11
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Thomas Huth, 2023/01/11
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Fabiano Rosas, 2023/01/11
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Richard Henderson, 2023/01/11
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Fabiano Rosas, 2023/01/12
- Re: [RFC PATCH v2 13/19] tests: do not run test-hmp on all machines for ARM KVM-only, Peter Maydell, 2023/01/12
[RFC PATCH v2 14/19] tests: do not run qom-test on all machines for ARM KVM-only, Fabiano Rosas, 2023/01/09
[RFC PATCH v2 15/19] tests: device-introspect-test: cope with ARM TCG-only devices,
Fabiano Rosas <=
[RFC PATCH v2 16/19] tests/tcg: Do not build/run TCG tests if TCG is disabled, Fabiano Rosas, 2023/01/09
[RFC PATCH v2 17/19] target/arm: Move regime_using_lpae_format into internal.h, Fabiano Rosas, 2023/01/09
[RFC PATCH v2 18/19] cpu-defs.h: Expose CPUTLBEntryFull to non-TCG code, Fabiano Rosas, 2023/01/09
[RFC PATCH v2 19/19] target/arm: don't access TCG code when debugging with KVM, Fabiano Rosas, 2023/01/09