Hello, As discussed on the KVM Call, this series extends test coverage to all 16 targets. For now it tests that QOM type changes do not lead to QOM cast assertions.
v3 macro'fies and cleans up ppcemb machine test setup. There was a discussion of dropping usage of qtest_enabled() in favor of never erroring out in machine inits but Aurélien went ahead to restore mips error behavior, Markus suggested as alternative to supply dummy blobs and real blobs per machine seem infeasible. This solution seems the easiest way forward, be it an interim solution, so I am planning to take this through qom-next before I pull in more QOM realize conversions on so far untested machines. Similarly I see it as more important to get test coverage quickly than waiting for a working QMP query-machines based solution; if we do more than just machine instantiation, we will need to pass in machine-specific QOM paths anyway. Regards, Andreas v2 -> v3: * Rebased onto mips and Makefile changes; ppc patches were applied. * Use macros for machine list traversal. v1 -> v2: * gumstix, z2: Avoided conditionalizing use of pflash device in favor of NULL bdrv. * puv3: Limited qtest workaround to a NULL kernel_filename. * Added error workarounds for milkymist, ppc405, shix and leon3. * Cleaned up debug output for ppc405 and shix. * Extended qom-test to cover virtually all machines, including n800 and pc. * Moved machine names to arrays wherever sensible, to aid with extensibility. * Adopted error_report() for armv7m, too. Cc: Anthony Liguori <anth...@codemonkey.ws> Cc: Aurélien Jarno <aurel...@aurel32.net> Cc: Paolo Bonzini <pbonz...@redhat.com> Cc: Peter Maydell <peter.mayd...@linaro.org> Andreas Färber (18): mips_mipssim: Silence BIOS loading warning for qtest arm/boot: Turn arm_load_kernel() into no-op for qtest without -kernel puv3: Turn puv3_load_kernel() into a no-op for qtest without -kernel mainstone: Don't enforce use of -pflash for qtest gumstix: Don't enforce use of -pflash for qtest z2: Don't enforce use of -pflash for qtest palm: Don't enforce loading ROM or kernel for qtest omap_sx1: Don't enforce use of kernel or flash for qtest exynos4_boards: Silence lack of -smp 2 warning for qtest armv7m: Don't enforce use of kernel for qtest axis_dev88: Don't enforce use of kernel for qtest mcf5208: Don't enforce use of kernel for qtest an5206: Don't enforce use of kernel for qtest milkymist: Suppress -kernel/-bios/-drive error for qtest shix: Drop debug output shix: Don't require firmware presence for qtest leon3: Don't enforce use of -bios with qtest qtest: Prepare QOM machine tests hw/arm/armv7m.c | 25 ++--- hw/arm/boot.c | 4 + hw/arm/exynos4_boards.c | 3 +- hw/arm/gumstix.c | 11 ++- hw/arm/mainstone.c | 5 +- hw/arm/omap_sx1.c | 3 +- hw/arm/palm.c | 3 +- hw/arm/z2.c | 5 +- hw/block/tc58128.c | 10 +- hw/cris/axis_dev88.c | 11 ++- hw/lm32/milkymist.c | 3 +- hw/m68k/an5206.c | 4 + hw/m68k/mcf5208.c | 4 + hw/mips/mips_mipssim.c | 4 +- hw/sh4/shix.c | 16 +-- hw/sparc/leon3.c | 3 +- hw/unicore32/puv3.c | 4 + tests/Makefile | 26 +++++ tests/qom-test.c | 253 ++++++++++++++++++++++++++++++++++++++++++++++++ 19 files changed, 353 insertions(+), 44 deletions(-) create mode 100644 tests/qom-test.c -- 1.8.1.4