Hi, This series aims at having accelerator-independent qtests by querying a QEMU instance at runtime to check the list of built-in accelerators.
First we add the 'query-accels' QMP command, then we add the qtest_has_accel() method to libqtest, finally we use this new method to allow running bios-tables-test on KVM-only builds. As a bonus we remove CONFIG_TCG in config_host, to avoid building unnecessary objects depending on TCG. Since v3: - Addressed Markus & Drew review comments - Added qtest/migration-test patch Since v2: - Addressed Eric & Paolo review comments Since v1: - kept over-engineered union (I don't how to do simple enum) - dropped arm-cpu-features patches for now - fixed typos (Eric) - rename qtest_has_accel (Thomas) - probe accel with machine none previous qtest (Paolo) - iterate over QAPI enum (Markus) Eric's suggestion of conditional QAPI didn't worked out, as accelerator definitions are poisoned. Please review, Phil. Philippe Mathieu-Daudé (12): MAINTAINERS: Add qtest/arm-cpu-features.c to ARM TCG CPUs section accel: Introduce 'query-accels' QMP command tests/qtest: Add qtest_has_accel() method qtest/arm-cpu-features: Use generic qtest_has_accel() to check for KVM qtest/arm-cpu-features: Restrict sve_tests_sve_off_kvm test to KVM qtest/arm-cpu-features: Remove TCG fallback to KVM specific tests qtest/arm-cpu-features: Use generic qtest_has_accel() to check for TCG qtest/bios-tables-test: Make test build-independent from accelerator qtest/migration-test: Skip tests if KVM not builtin on s390x/ppc64 qtest/qmp-cmd-test: Make test build-independent from accelerator tests/qtest: Do not restrict bios-tables-test to Aarch64 hosts anymore tests/meson: Only build softfloat objects if TCG is selected meson.build | 1 - qapi/machine.json | 47 ++++++++++++++++ tests/qtest/libqos/libqtest.h | 8 +++ accel/accel-qmp.c | 49 +++++++++++++++++ tests/qtest/arm-cpu-features.c | 55 ++++++------------- tests/qtest/bios-tables-test.c | 99 ++++++++++++++++++---------------- tests/qtest/libqtest.c | 29 ++++++++++ tests/qtest/migration-test.c | 4 +- tests/qtest/qmp-cmd-test.c | 18 +++++-- MAINTAINERS | 1 + accel/meson.build | 2 +- tests/qtest/meson.build | 3 +- 12 files changed, 221 insertions(+), 95 deletions(-) create mode 100644 accel/accel-qmp.c -- 2.26.3