tests/qtest: Check for virtio-blk before using -cdrom with the arm virt machine

The arm "virt" machine needs "virtio-blk-pci" for devices that get attached
via the "-cdrom" option. Since this is an optional device that might not
be available in the binary, we should check for the availability of this
device first before using it.

Message-Id: <20230525081016.1870364-3-thuth@redhat.com>
Reviewed-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
Thomas Huth 2023-05-25 10:10:14 +02:00
parent 54c8ff27f6
commit 8c730de717
2 changed files with 6 additions and 2 deletions

View file

@ -2164,7 +2164,7 @@ int main(int argc, char *argv[])
}
}
} else if (strcmp(arch, "aarch64") == 0) {
if (has_tcg) {
if (has_tcg && qtest_has_device("virtio-blk-pci")) {
qtest_add_func("acpi/virt", test_acpi_virt_tcg);
qtest_add_func("acpi/virt/acpihmatvirt",
test_acpi_virt_tcg_acpi_hmat);

View file

@ -264,9 +264,13 @@ int main(int argc, char **argv)
const char *armmachines[] = {
"realview-eb", "realview-eb-mpcore", "realview-pb-a8",
"realview-pbx-a9", "versatileab", "versatilepb", "vexpress-a15",
"vexpress-a9", "virt", NULL
"vexpress-a9", NULL
};
add_cdrom_param_tests(armmachines);
if (qtest_has_device("virtio-blk-pci")) {
const char *virtmachine[] = { "virt", NULL };
add_cdrom_param_tests(virtmachine);
}
} else {
const char *nonemachine[] = { "none", NULL };
add_cdrom_param_tests(nonemachine);