Rather than test with synthetic capabilities which might get outdated
reuse testQemuGetRealCaps to fetch latest capabilities and use those.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
tests/qemuhotplugtest.c | 231 +++++++++---------
.../ppc64-modern-bulk-result-conf.xml | 5 +-
.../ppc64-modern-bulk-result-live.xml | 5 +-
.../ppc64-modern-individual-result-conf.xml | 5 +-
.../ppc64-modern-individual-result-live.xml | 5 +-
.../x86-modern-bulk-result-conf.xml | 5 +-
.../x86-modern-bulk-result-live.xml | 5 +-
.../x86-modern-individual-add-result-conf.xml | 5 +-
.../x86-modern-individual-add-result-live.xml | 5 +-
.../qemuhotplug-base-ccw-live+ccw-virtio.xml | 13 +-
...with-2-ccw-virtio+ccw-virtio-1-reverse.xml | 13 +-
...otplug-base-ccw-live-with-2-ccw-virtio.xml | 13 +-
...-with-ccw-virtio+ccw-virtio-2-explicit.xml | 13 +-
...-ccw-live-with-ccw-virtio+ccw-virtio-2.xml | 13 +-
...uhotplug-base-ccw-live-with-ccw-virtio.xml | 13 +-
.../qemuhotplug-base-ccw-live.xml | 13 +-
.../qemuhotplug-base-live+cdrom-scsi.xml | 5 +-
.../qemuhotplug-base-live+cdrom-usb.xml | 5 +-
...uhotplug-base-live+disk-scsi-multipath.xml | 5 +-
...+disk-scsi-wwn+disk-scsi-duplicate-wwn.xml | 5 +-
.../qemuhotplug-base-live+disk-scsi.xml | 5 +-
.../qemuhotplug-base-live+disk-usb.xml | 5 +-
.../qemuhotplug-base-live+disk-virtio.xml | 5 +-
.../qemuhotplug-base-live+guestfwd.xml | 5 +-
.../qemuhotplug-base-live+hostdev-pci.xml | 5 +-
.../qemuhotplug-base-live+interface-vdpa.xml | 5 +-
...qemuhotplug-base-live+ivshmem-doorbell.xml | 5 +-
.../qemuhotplug-base-live+ivshmem-plain.xml | 5 +-
.../qemuhotplug-base-live+qemu-agent.xml | 5 +-
...uhotplug-base-live+watchdog-user-alias.xml | 5 +-
.../qemuhotplug-base-live+watchdog.xml | 5 +-
.../qemuhotplug-base-live.xml | 5 +-
...hotplug-base-with-scsi-controller-live.xml | 5 +-
...thout-scsi-controller-live+disk-scsi-2.xml | 5 +-
...g-console-compat-2-live+console-virtio.xml | 5 +-
.../qemuhotplug-console-compat-2-live.xml | 5 +-
...uhotplug-pseries-base-live+hostdev-pci.xml | 5 +-
.../qemuhotplug-pseries-base-live.xml | 5 +-
38 files changed, 299 insertions(+), 173 deletions(-)
diff --git a/tests/qemuhotplugtest.c b/tests/qemuhotplugtest.c
index 186958cd57..9c8407c5ef 100644
--- a/tests/qemuhotplugtest.c
+++ b/tests/qemuhotplugtest.c
@@ -53,12 +53,22 @@ struct qemuHotplugTestData {
bool keep;
virDomainObj *vm;
bool deviceDeletedEvent;
+ const char *arch;
+ GHashTable *capsLatestFiles;
+ GHashTable *capsCache;
+ GHashTable *schemaCache;
};
static int
qemuHotplugCreateObjects(virDomainXMLOption *xmlopt,
virDomainObj **vm,
- const char *domxml)
+ const char *domxml,
+ const char *arch,
+ GHashTable *capsLatestFiles,
+ GHashTable *capsCache,
+ GHashTable *schemaCache,
+ GHashTable **schema)
+
{
qemuDomainObjPrivate *priv = NULL;
const unsigned int parseFlags = 0;
@@ -68,28 +78,10 @@ qemuHotplugCreateObjects(virDomainXMLOption *xmlopt,
priv = (*vm)->privateData;
- priv->qemuCaps = virQEMUCapsNew();
-
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_SCSI_LSI);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_VIRTIO_SCSI);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_USB_STORAGE);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_IVSHMEM_PLAIN);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_IVSHMEM_DOORBELL);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_SCSI_DISK_WWN);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_VFIO_PCI);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_QXL);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_VGA);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_CIRRUS_VGA);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_PIIX_DISABLE_S3);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_PIIX_DISABLE_S4);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_VNC);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_SPICE);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_PR_MANAGER_HELPER);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_SCSI_BLOCK);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_USB_KBD);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_NETDEV_VHOST_VDPA);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_SET_ACTION);
+ if (!(priv->qemuCaps = testQemuGetRealCaps(arch, "latest",
"",
+ capsLatestFiles, capsCache,
+ schemaCache, schema)))
+ return -1;
if (qemuTestCapsCacheInsert(driver.qemuCapsCache, priv->qemuCaps) < 0)
return -1;
@@ -347,7 +339,10 @@ testQemuHotplug(const void *data)
goto cleanup;
}
} else {
- if (qemuHotplugCreateObjects(driver.xmlopt, &vm, domain_xml) < 0)
+ if (qemuHotplugCreateObjects(driver.xmlopt, &vm, domain_xml,
+ test->arch, test->capsLatestFiles,
+ test->capsCache, test->schemaCache,
+ NULL) < 0)
goto cleanup;
}
@@ -478,7 +473,10 @@ struct testQemuHotplugCpuParams {
bool state;
bool modern;
bool fail;
- GHashTable *schema;
+ const char *arch;
+ GHashTable *capsLatestFiles;
+ GHashTable *capsCache;
+ GHashTable *schemaCache;
};
@@ -488,6 +486,7 @@ testQemuHotplugCpuPrepare(const struct testQemuHotplugCpuParams
*params)
qemuDomainObjPrivate *priv = NULL;
g_autofree char *prefix = NULL;
struct testQemuHotplugCpuData *data = NULL;
+ GHashTable *schema = NULL;
prefix = g_strdup_printf("%s/qemuhotplugtestcpus/%s", abs_srcdir,
params->test);
@@ -503,7 +502,9 @@ testQemuHotplugCpuPrepare(const struct testQemuHotplugCpuParams
*params)
if (virTestLoadFile(data->file_xml_dom, &data->xml_dom) < 0)
goto error;
- if (qemuHotplugCreateObjects(driver.xmlopt, &data->vm, data->xml_dom) <
0)
+ if (qemuHotplugCreateObjects(driver.xmlopt, &data->vm, data->xml_dom,
+ params->arch, params->capsLatestFiles,
+ params->capsCache, params->schemaCache,
&schema) < 0)
goto error;
/* create vm->newDef */
@@ -517,7 +518,7 @@ testQemuHotplugCpuPrepare(const struct testQemuHotplugCpuParams
*params)
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_QUERY_HOTPLUGGABLE_CPUS);
if (!(data->mon = qemuMonitorTestNewFromFileFull(data->file_json_monitor,
- &driver, data->vm,
params->schema)))
+ &driver, data->vm, schema)))
goto error;
if (params->fail)
@@ -645,11 +646,17 @@ testQemuHotplugCpuIndividual(const void *opaque)
static int
mymain(void)
{
- g_autoptr(GHashTable) qmpschema = NULL;
int ret = 0;
- struct qemuHotplugTestData data = {0};
- struct testQemuHotplugCpuParams cpudata;
g_autoptr(virQEMUDriverConfig) cfg = NULL;
+ g_autoptr(GHashTable) capsLatestFiles = testQemuGetLatestCaps();
+ g_autoptr(GHashTable) capsCache = virHashNew(virObjectUnref);
+ g_autoptr(GHashTable) schemaCache = virHashNew((GDestroyNotify) g_hash_table_unref);
+ struct qemuHotplugTestData data = { .capsLatestFiles = capsLatestFiles,
+ .capsCache = capsCache,
+ .schemaCache = schemaCache };
+ struct testQemuHotplugCpuParams cpudata = { .capsLatestFiles = capsLatestFiles,
+ .capsCache = capsCache,
+ .schemaCache = schemaCache };
if (qemuTestDriverInit(&driver) < 0)
return EXIT_FAILURE;
@@ -661,13 +668,6 @@ mymain(void)
if (!(driver.domainEventState = virObjectEventStateNew()))
return EXIT_FAILURE;
- if (!(qmpschema = testQEMUSchemaLoadLatest("x86_64"))) {
- VIR_TEST_VERBOSE("failed to load qapi schema\n");
- return EXIT_FAILURE;
- }
-
- cpudata.schema = qmpschema;
-
driver.lockManager = virLockManagerPluginNew("nop", "qemu",
driver.config->configBaseDir,
0);
@@ -682,10 +682,11 @@ mymain(void)
}
-#define DO_TEST(file, ACTION, dev, fail_, keep_, ...) \
+#define DO_TEST(archname, file, ACTION, dev, fail_, keep_, ...) \
do { \
const char *my_mon[] = { __VA_ARGS__, NULL}; \
const char *name = file " " #ACTION " " dev; \
+ data.arch = archname; \
data.action = ACTION; \
data.domain_filename = file; \
data.device_filename = dev; \
@@ -696,14 +697,14 @@ mymain(void)
ret = -1; \
} while (0)
-#define DO_TEST_ATTACH(file, dev, fail, keep, ...) \
- DO_TEST(file, ATTACH, dev, fail, keep, __VA_ARGS__)
+#define DO_TEST_ATTACH(arch, file, dev, fail, keep, ...) \
+ DO_TEST(arch, file, ATTACH, dev, fail, keep, __VA_ARGS__)
-#define DO_TEST_DETACH(file, dev, fail, keep, ...) \
- DO_TEST(file, DETACH, dev, fail, keep, __VA_ARGS__)
+#define DO_TEST_DETACH(arch, file, dev, fail, keep, ...) \
+ DO_TEST(arch, file, DETACH, dev, fail, keep, __VA_ARGS__)
-#define DO_TEST_UPDATE(file, dev, fail, keep, ...) \
- DO_TEST(file, UPDATE, dev, fail, keep, __VA_ARGS__)
+#define DO_TEST_UPDATE(arch, file, dev, fail, keep, ...) \
+ DO_TEST(arch, file, UPDATE, dev, fail, keep, __VA_ARGS__)
#define QMP_OK "{\"return\": {}}"
@@ -722,60 +723,60 @@ mymain(void)
"}\r\n"
cfg->spiceTLS = true;
- DO_TEST_UPDATE("graphics-spice", "graphics-spice-nochange",
false, false, NULL);
- DO_TEST_UPDATE("graphics-spice-timeout",
"graphics-spice-timeout-nochange", false, false,
+ DO_TEST_UPDATE("x86_64", "graphics-spice",
"graphics-spice-nochange", false, false, NULL);
+ DO_TEST_UPDATE("x86_64", "graphics-spice-timeout",
"graphics-spice-timeout-nochange", false, false,
"set_password", QMP_OK, "expire_password",
QMP_OK);
- DO_TEST_UPDATE("graphics-spice-timeout",
"graphics-spice-timeout-password", false, false,
+ DO_TEST_UPDATE("x86_64", "graphics-spice-timeout",
"graphics-spice-timeout-password", false, false,
"set_password", QMP_OK, "expire_password",
QMP_OK);
- DO_TEST_UPDATE("graphics-spice", "graphics-spice-listen", true,
false, NULL);
- DO_TEST_UPDATE("graphics-spice-listen-network",
"graphics-spice-listen-network-password", false, false,
+ DO_TEST_UPDATE("x86_64", "graphics-spice",
"graphics-spice-listen", true, false, NULL);
+ DO_TEST_UPDATE("x86_64", "graphics-spice-listen-network",
"graphics-spice-listen-network-password", false, false,
"set_password", QMP_OK, "expire_password",
QMP_OK);
cfg->spiceTLS = false;
/* Strange huh? Currently, only graphics can be updated :-P */
- DO_TEST_UPDATE("disk-cdrom", "disk-cdrom-nochange", true, false,
NULL);
+ DO_TEST_UPDATE("x86_64", "disk-cdrom",
"disk-cdrom-nochange", true, false, NULL);
- DO_TEST_ATTACH("console-compat-2-live", "console-virtio", false,
true,
+ DO_TEST_ATTACH("x86_64", "console-compat-2-live",
"console-virtio", false, true,
"chardev-add", "{\"return\":
{\"pty\": \"/dev/pts/26\"}}",
"device_add", QMP_OK);
- DO_TEST_DETACH("console-compat-2-live", "console-virtio", false,
false,
+ DO_TEST_DETACH("x86_64", "console-compat-2-live",
"console-virtio", false, false,
"device_del", QMP_DEVICE_DELETED("console1")
QMP_OK,
"chardev-remove", QMP_OK, "query-fdsets",
"{\"return\": []}");
- DO_TEST_ATTACH("base-live", "disk-virtio", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "disk-virtio",
false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-virtio", true, true,
+ DO_TEST_DETACH("x86_64", "base-live", "disk-virtio",
true, true,
"device_del", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-virtio", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "disk-virtio",
false, false,
"device_del", QMP_DEVICE_DELETED("virtio-disk4")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
- DO_TEST_ATTACH("base-live", "disk-usb", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "disk-usb",
false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-usb", true, true,
+ DO_TEST_DETACH("x86_64", "base-live", "disk-usb", true,
true,
"device_del", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-usb", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "disk-usb",
false, false,
"device_del", QMP_DEVICE_DELETED("usb-disk16")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
- DO_TEST_ATTACH("base-live", "disk-scsi", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "disk-scsi",
false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-scsi", true, true,
+ DO_TEST_DETACH("x86_64", "base-live", "disk-scsi",
true, true,
"device_del", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-scsi", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "disk-scsi",
false, false,
"device_del", QMP_DEVICE_DELETED("scsi0-0-0-5")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
- DO_TEST_ATTACH("base-without-scsi-controller-live",
"disk-scsi-2", false, true,
+ DO_TEST_ATTACH("x86_64", "base-without-scsi-controller-live",
"disk-scsi-2", false, true,
/* Four controllers added */
"device_add", QMP_OK,
"device_add", QMP_OK,
@@ -784,109 +785,109 @@ mymain(void)
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-with-scsi-controller-live", "disk-scsi-2",
true, true,
+ DO_TEST_DETACH("x86_64", "base-with-scsi-controller-live",
"disk-scsi-2", true, true,
"device_del", QMP_OK);
- DO_TEST_DETACH("base-with-scsi-controller-live", "disk-scsi-2",
false, false,
+ DO_TEST_DETACH("x86_64", "base-with-scsi-controller-live",
"disk-scsi-2", false, false,
"device_del", QMP_DEVICE_DELETED("scsi3-0-6")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
- DO_TEST_ATTACH("base-live", "disk-scsi-multipath", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live",
"disk-scsi-multipath", false, true,
"object-add", QMP_OK,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-scsi-multipath", true, true,
+ DO_TEST_DETACH("x86_64", "base-live",
"disk-scsi-multipath", true, true,
"device_del", QMP_OK);
- DO_TEST_DETACH("base-live", "disk-scsi-multipath", false, false,
+ DO_TEST_DETACH("x86_64", "base-live",
"disk-scsi-multipath", false, false,
"device_del", QMP_DEVICE_DELETED("scsi0-0-0-0")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK,
"object-del", QMP_OK);
- DO_TEST_ATTACH("base-live", "qemu-agent", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "qemu-agent",
false, true,
"getfd", QMP_OK,
"chardev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "qemu-agent-detach", false, false,
+ DO_TEST_DETACH("x86_64", "base-live",
"qemu-agent-detach", false, false,
"device_del", QMP_DEVICE_DELETED("channel0")
QMP_OK,
"chardev-remove", QMP_OK, "query-fdsets",
"{\"return\": []}");
- DO_TEST_ATTACH("base-ccw-live", "ccw-virtio", false, true,
+ DO_TEST_ATTACH("s390x", "base-ccw-live", "ccw-virtio",
false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-ccw-live", "ccw-virtio", false, false,
+ DO_TEST_DETACH("s390x", "base-ccw-live", "ccw-virtio",
false, false,
"device_del", QMP_DEVICE_DELETED("virtio-disk4")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
- DO_TEST_ATTACH("base-ccw-live-with-ccw-virtio", "ccw-virtio-2",
false, true,
+ DO_TEST_ATTACH("s390x", "base-ccw-live-with-ccw-virtio",
"ccw-virtio-2", false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-ccw-live-with-ccw-virtio", "ccw-virtio-2",
false, false,
+ DO_TEST_DETACH("s390x", "base-ccw-live-with-ccw-virtio",
"ccw-virtio-2", false, false,
"device_del", QMP_DEVICE_DELETED("virtio-disk0")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
- DO_TEST_ATTACH("base-ccw-live-with-ccw-virtio",
"ccw-virtio-2-explicit", false, true,
+ DO_TEST_ATTACH("s390x", "base-ccw-live-with-ccw-virtio",
"ccw-virtio-2-explicit", false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-ccw-live-with-ccw-virtio",
"ccw-virtio-2-explicit", false, false,
+ DO_TEST_DETACH("s390x", "base-ccw-live-with-ccw-virtio",
"ccw-virtio-2-explicit", false, false,
"device_del", QMP_DEVICE_DELETED("virtio-disk0")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
/* Attach a second device, then detach the first one. Then attach the first one
again. */
- DO_TEST_ATTACH("base-ccw-live-with-ccw-virtio",
"ccw-virtio-2-explicit", false, true,
+ DO_TEST_ATTACH("s390x", "base-ccw-live-with-ccw-virtio",
"ccw-virtio-2-explicit", false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-ccw-live-with-2-ccw-virtio",
"ccw-virtio-1-explicit", false, true,
+ DO_TEST_DETACH("s390x", "base-ccw-live-with-2-ccw-virtio",
"ccw-virtio-1-explicit", false, true,
"device_del", QMP_DEVICE_DELETED("virtio-disk4")
QMP_OK);
- DO_TEST_ATTACH("base-ccw-live-with-2-ccw-virtio",
"ccw-virtio-1-reverse", false, false,
+ DO_TEST_ATTACH("s390x", "base-ccw-live-with-2-ccw-virtio",
"ccw-virtio-1-reverse", false, false,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_ATTACH("base-live", "ivshmem-plain", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "ivshmem-plain",
false, true,
"object-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_ATTACH("base-live", "ivshmem-doorbell", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live",
"ivshmem-doorbell", false, true,
"chardev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live+ivshmem-plain",
"ivshmem-doorbell-detach", false, true,
+ DO_TEST_DETACH("x86_64", "base-live+ivshmem-plain",
"ivshmem-doorbell-detach", false, true,
"device_del", QMP_DEVICE_DELETED("shmem1")
QMP_OK,
"chardev-remove", QMP_OK);
- DO_TEST_DETACH("base-live", "ivshmem-plain-detach", false,
false,
+ DO_TEST_DETACH("x86_64", "base-live",
"ivshmem-plain-detach", false, false,
"device_del", QMP_DEVICE_DELETED("shmem0")
QMP_OK,
"object-del", QMP_OK);
- DO_TEST_ATTACH("base-live+disk-scsi-wwn",
+ DO_TEST_ATTACH("x86_64", "base-live+disk-scsi-wwn",
"disk-scsi-duplicate-wwn", false, false,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_ATTACH("base-live", "hostdev-pci", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "hostdev-pci",
false, true,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "hostdev-pci", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "hostdev-pci",
false, false,
"device_del", QMP_DEVICE_DELETED("hostdev0")
QMP_OK);
- DO_TEST_ATTACH("pseries-base-live", "hostdev-pci", false, true,
+ DO_TEST_ATTACH("ppc64", "pseries-base-live",
"hostdev-pci", false, true,
"device_add", QMP_OK);
- DO_TEST_DETACH("pseries-base-live", "hostdev-pci", false, false,
+ DO_TEST_DETACH("ppc64", "pseries-base-live",
"hostdev-pci", false, false,
"device_del", QMP_DEVICE_DELETED("hostdev0")
QMP_OK);
- DO_TEST_ATTACH("base-live", "interface-vdpa", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "interface-vdpa",
false, true,
"query-fdsets",
"{\"return\":[{\"fdset-id\":99999}]}",
"add-fd", "{ \"return\": {
\"fdset-id\": 1, \"fd\": 95 }}",
"netdev_add", QMP_OK, "device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "interface-vdpa", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "interface-vdpa",
false, false,
"device_del", QMP_DEVICE_DELETED("net0") QMP_OK,
"netdev_del", QMP_OK,
"query-fdsets",
@@ -894,50 +895,51 @@ mymain(void)
"remove-fd", QMP_OK
);
- DO_TEST_ATTACH("base-live", "watchdog", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "watchdog",
false, true,
"set-action", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "watchdog-full", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "watchdog-full",
false, false,
"device_del", QMP_DEVICE_DELETED("watchdog0")
QMP_OK);
- DO_TEST_ATTACH("base-live", "watchdog-user-alias", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live",
"watchdog-user-alias", false, true,
"set-action", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "watchdog-user-alias-full", false,
false,
+ DO_TEST_DETACH("x86_64", "base-live",
"watchdog-user-alias-full", false, false,
"device_del",
QMP_DEVICE_DELETED("ua-UserWatchdog") QMP_OK);
- DO_TEST_ATTACH("base-live", "guestfwd", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "guestfwd",
false, true,
"getfd", QMP_OK,
"chardev-add", QMP_OK,
"netdev_add", QMP_OK);
- DO_TEST_DETACH("base-live", "guestfwd", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "guestfwd",
false, false,
"netdev_del", QMP_OK);
- DO_TEST_ATTACH("base-live", "cdrom-usb", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "cdrom-usb",
false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "cdrom-usb", true, true,
+ DO_TEST_DETACH("x86_64", "base-live", "cdrom-usb",
true, true,
"device_del", QMP_OK);
- DO_TEST_DETACH("base-live", "cdrom-usb", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "cdrom-usb",
false, false,
"device_del", QMP_DEVICE_DELETED("usb-disk4")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
- DO_TEST_ATTACH("base-live", "cdrom-scsi", false, true,
+ DO_TEST_ATTACH("x86_64", "base-live", "cdrom-scsi",
false, true,
"blockdev-add", QMP_OK,
"blockdev-add", QMP_OK,
"device_add", QMP_OK);
- DO_TEST_DETACH("base-live", "cdrom-scsi", true, true,
+ DO_TEST_DETACH("x86_64", "base-live", "cdrom-scsi",
true, true,
"device_del", QMP_OK);
- DO_TEST_DETACH("base-live", "cdrom-scsi", false, false,
+ DO_TEST_DETACH("x86_64", "base-live", "cdrom-scsi",
false, false,
"device_del", QMP_DEVICE_DELETED("scsi0-0-0-4")
QMP_OK,
"blockdev-del", QMP_OK,
"blockdev-del", QMP_OK);
-#define DO_TEST_CPU_GROUP(prefix, vcpus, modernhp, expectfail) \
+#define DO_TEST_CPU_GROUP(archname, prefix, vcpus, modernhp, expectfail) \
do { \
cpudata.test = prefix; \
+ cpudata.arch = archname; \
cpudata.newcpus = vcpus; \
cpudata.modern = modernhp; \
cpudata.fail = expectfail; \
@@ -946,15 +948,16 @@ mymain(void)
ret = -1; \
} while (0)
- DO_TEST_CPU_GROUP("x86-modern-bulk", 7, true, false);
- DO_TEST_CPU_GROUP("ppc64-modern-bulk", 24, true, false);
- DO_TEST_CPU_GROUP("ppc64-modern-bulk", 15, true, true);
- DO_TEST_CPU_GROUP("ppc64-modern-bulk", 23, true, true);
- DO_TEST_CPU_GROUP("ppc64-modern-bulk", 25, true, true);
+ DO_TEST_CPU_GROUP("x86_64", "x86-modern-bulk", 7, true, false);
+ DO_TEST_CPU_GROUP("ppc64", "ppc64-modern-bulk", 24, true,
false);
+ DO_TEST_CPU_GROUP("ppc64", "ppc64-modern-bulk", 15, true, true);
+ DO_TEST_CPU_GROUP("ppc64", "ppc64-modern-bulk", 23, true, true);
+ DO_TEST_CPU_GROUP("ppc64", "ppc64-modern-bulk", 25, true, true);
-#define DO_TEST_CPU_INDIVIDUAL(prefix, mapstr, statefl, modernhp, expectfail) \
+#define DO_TEST_CPU_INDIVIDUAL(archname, prefix, mapstr, statefl, modernhp, expectfail)
\
do { \
cpudata.test = prefix; \
+ cpudata.arch = archname; \
cpudata.cpumap = mapstr; \
cpudata.state = statefl; \
cpudata.modern = modernhp; \
@@ -964,13 +967,13 @@ mymain(void)
ret = -1; \
} while (0)
- DO_TEST_CPU_INDIVIDUAL("x86-modern-individual-add", "7", true,
true, false);
- DO_TEST_CPU_INDIVIDUAL("x86-modern-individual-add", "6,7", true,
true, true);
- DO_TEST_CPU_INDIVIDUAL("x86-modern-individual-add", "7", false,
true, true);
+ DO_TEST_CPU_INDIVIDUAL("x86_64", "x86-modern-individual-add",
"7", true, true, false);
+ DO_TEST_CPU_INDIVIDUAL("x86_64", "x86-modern-individual-add",
"6,7", true, true, true);
+ DO_TEST_CPU_INDIVIDUAL("x86_64", "x86-modern-individual-add",
"7", false, true, true);
- DO_TEST_CPU_INDIVIDUAL("ppc64-modern-individual", "16-23", true,
true, false);
- DO_TEST_CPU_INDIVIDUAL("ppc64-modern-individual", "16-22", true,
true, true);
- DO_TEST_CPU_INDIVIDUAL("ppc64-modern-individual", "17", true,
true, true);
+ DO_TEST_CPU_INDIVIDUAL("ppc64", "ppc64-modern-individual",
"16-23", true, true, false);
+ DO_TEST_CPU_INDIVIDUAL("ppc64", "ppc64-modern-individual",
"16-22", true, true, true);
+ DO_TEST_CPU_INDIVIDUAL("ppc64", "ppc64-modern-individual",
"17", true, true, true);
qemuTestDriverFree(&driver);
virObjectUnref(data.vm);
diff --git a/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-conf.xml
b/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-conf.xml
index a7ada18bf3..afb2c85bc2 100644
--- a/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-conf.xml
+++ b/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-conf.xml
@@ -42,7 +42,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='1' dies='1' cores='4'
threads='8'/>
</cpu>
<clock offset='utc'/>
@@ -51,7 +52,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'/>
diff --git a/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-live.xml
b/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-live.xml
index 3932fd9b55..d86247d70c 100644
--- a/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-live.xml
+++ b/tests/qemuhotplugtestcpus/ppc64-modern-bulk-result-live.xml
@@ -42,7 +42,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='1' dies='1' cores='4'
threads='8'/>
</cpu>
<clock offset='utc'/>
@@ -51,7 +52,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-conf.xml
b/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-conf.xml
index f3a1efeede..e8d30f7ddd 100644
--- a/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-conf.xml
+++ b/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-conf.xml
@@ -42,7 +42,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='1' dies='1' cores='4'
threads='8'/>
</cpu>
<clock offset='utc'/>
@@ -51,7 +52,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'/>
diff --git a/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-live.xml
b/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-live.xml
index 6d64ead3d0..afc500657c 100644
--- a/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-live.xml
+++ b/tests/qemuhotplugtestcpus/ppc64-modern-individual-result-live.xml
@@ -42,7 +42,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='1' dies='1' cores='4'
threads='8'/>
</cpu>
<clock offset='utc'/>
@@ -51,7 +52,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestcpus/x86-modern-bulk-result-conf.xml
b/tests/qemuhotplugtestcpus/x86-modern-bulk-result-conf.xml
index 87eb19ebd8..8d52ffedb4 100644
--- a/tests/qemuhotplugtestcpus/x86-modern-bulk-result-conf.xml
+++ b/tests/qemuhotplugtestcpus/x86-modern-bulk-result-conf.xml
@@ -18,7 +18,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='4' dies='1' cores='2'
threads='1'/>
</cpu>
<clock offset='utc'/>
@@ -27,7 +28,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'/>
diff --git a/tests/qemuhotplugtestcpus/x86-modern-bulk-result-live.xml
b/tests/qemuhotplugtestcpus/x86-modern-bulk-result-live.xml
index 251634e266..f416397e33 100644
--- a/tests/qemuhotplugtestcpus/x86-modern-bulk-result-live.xml
+++ b/tests/qemuhotplugtestcpus/x86-modern-bulk-result-live.xml
@@ -18,7 +18,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='4' dies='1' cores='2'
threads='1'/>
</cpu>
<clock offset='utc'/>
@@ -27,7 +28,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-conf.xml
b/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-conf.xml
index 140892aaf8..0bd2af8e43 100644
--- a/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-conf.xml
+++ b/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-conf.xml
@@ -18,7 +18,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='4' dies='1' cores='2'
threads='1'/>
</cpu>
<clock offset='utc'/>
@@ -27,7 +28,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'/>
diff --git a/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-live.xml
b/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-live.xml
index 45196ba1d1..b31e6ebe55 100644
--- a/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-live.xml
+++ b/tests/qemuhotplugtestcpus/x86-modern-individual-add-result-live.xml
@@ -18,7 +18,8 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
<topology sockets='4' dies='1' cores='2'
threads='1'/>
</cpu>
<clock offset='utc'/>
@@ -27,7 +28,7 @@
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live+ccw-virtio.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live+ccw-virtio.xml
index 4036adde89..798a7ab732 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live+ccw-virtio.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live+ccw-virtio.xml
@@ -13,6 +13,7 @@
<apic/>
<pae/>
</features>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -31,18 +32,24 @@
</disk>
<controller type='usb' index='0'>
<alias name='usb'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'>
+ <zpci uid='0x0001' fid='0x00000000'/>
+ </address>
</controller>
<controller type='scsi' index='0' model='virtio-scsi'>
<alias name='scsi0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'>
+ <zpci uid='0x0002' fid='0x00000001'/>
+ </address>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'>
+ <zpci uid='0x0003' fid='0x00000002'/>
+ </address>
</controller>
<audio id='1' type='none'/>
<memballoon model='none'/>
diff --git
a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio+ccw-virtio-1-reverse.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio+ccw-virtio-1-reverse.xml
index 2eb7f9eb0e..5d2769c420 100644
---
a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio+ccw-virtio-1-reverse.xml
+++
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio+ccw-virtio-1-reverse.xml
@@ -13,6 +13,7 @@
<apic/>
<pae/>
</features>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -41,18 +42,24 @@
</disk>
<controller type='usb' index='0'>
<alias name='usb'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'>
+ <zpci uid='0x0001' fid='0x00000000'/>
+ </address>
</controller>
<controller type='scsi' index='0' model='virtio-scsi'>
<alias name='scsi0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'>
+ <zpci uid='0x0002' fid='0x00000001'/>
+ </address>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'>
+ <zpci uid='0x0003' fid='0x00000002'/>
+ </address>
</controller>
<audio id='1' type='none'/>
<memballoon model='none'/>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio.xml
index 935925bdba..845c0e1c98 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-2-ccw-virtio.xml
@@ -13,6 +13,7 @@
<apic/>
<pae/>
</features>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -31,18 +32,24 @@
</disk>
<controller type='usb' index='0'>
<alias name='usb'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'>
+ <zpci uid='0x0001' fid='0x00000000'/>
+ </address>
</controller>
<controller type='scsi' index='0' model='virtio-scsi'>
<alias name='scsi0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'>
+ <zpci uid='0x0002' fid='0x00000001'/>
+ </address>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'>
+ <zpci uid='0x0003' fid='0x00000002'/>
+ </address>
</controller>
<audio id='1' type='none'/>
<memballoon model='none'/>
diff --git
a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2-explicit.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2-explicit.xml
index 51fe4b461a..29b8fdd6c8 100644
---
a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2-explicit.xml
+++
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2-explicit.xml
@@ -13,6 +13,7 @@
<apic/>
<pae/>
</features>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -40,18 +41,24 @@
</disk>
<controller type='usb' index='0'>
<alias name='usb'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'>
+ <zpci uid='0x0001' fid='0x00000000'/>
+ </address>
</controller>
<controller type='scsi' index='0' model='virtio-scsi'>
<alias name='scsi0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'>
+ <zpci uid='0x0002' fid='0x00000001'/>
+ </address>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'>
+ <zpci uid='0x0003' fid='0x00000002'/>
+ </address>
</controller>
<audio id='1' type='none'/>
<memballoon model='none'/>
diff --git
a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2.xml
index 51fe4b461a..29b8fdd6c8 100644
---
a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2.xml
+++
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio+ccw-virtio-2.xml
@@ -13,6 +13,7 @@
<apic/>
<pae/>
</features>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -40,18 +41,24 @@
</disk>
<controller type='usb' index='0'>
<alias name='usb'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'>
+ <zpci uid='0x0001' fid='0x00000000'/>
+ </address>
</controller>
<controller type='scsi' index='0' model='virtio-scsi'>
<alias name='scsi0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'>
+ <zpci uid='0x0002' fid='0x00000001'/>
+ </address>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'>
+ <zpci uid='0x0003' fid='0x00000002'/>
+ </address>
</controller>
<audio id='1' type='none'/>
<memballoon model='none'/>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio.xml
index adec141512..82402ffe1b 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live-with-ccw-virtio.xml
@@ -13,6 +13,7 @@
<apic/>
<pae/>
</features>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -30,18 +31,24 @@
</disk>
<controller type='usb' index='0'>
<alias name='usb'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'>
+ <zpci uid='0x0001' fid='0x00000000'/>
+ </address>
</controller>
<controller type='scsi' index='0' model='virtio-scsi'>
<alias name='scsi0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'>
+ <zpci uid='0x0002' fid='0x00000001'/>
+ </address>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'>
+ <zpci uid='0x0003' fid='0x00000002'/>
+ </address>
</controller>
<audio id='1' type='none'/>
<memballoon model='none'/>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live.xml
index 2267fe39df..6eb60b13a9 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-ccw-live.xml
@@ -13,6 +13,7 @@
<apic/>
<pae/>
</features>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -21,18 +22,24 @@
<emulator>/usr/bin/qemu-system-s390x</emulator>
<controller type='usb' index='0'>
<alias name='usb'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'>
+ <zpci uid='0x0001' fid='0x00000000'/>
+ </address>
</controller>
<controller type='scsi' index='0' model='virtio-scsi'>
<alias name='scsi0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'>
+ <zpci uid='0x0002' fid='0x00000001'/>
+ </address>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
- <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x00'
slot='0x04' function='0x0'>
+ <zpci uid='0x0003' fid='0x00000002'/>
+ </address>
</controller>
<audio id='1' type='none'/>
<memballoon model='none'/>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-scsi.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-scsi.xml
index 922e9c1b4e..4353191197 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-scsi.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-scsi.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -28,7 +31,7 @@
<alias name='scsi0-0-0-4'/>
<address type='drive' controller='0' bus='0'
target='0' unit='4'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-usb.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-usb.xml
index ba8ce3b2c8..d31136dbc8 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-usb.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+cdrom-usb.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -28,7 +31,7 @@
<alias name='usb-disk4'/>
<address type='usb' bus='0' port='1'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-multipath.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-multipath.xml
index bea59403be..0a0fbc1c95 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-multipath.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-multipath.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -31,7 +34,7 @@
<alias name='scsi0-0-0-0'/>
<address type='drive' controller='0' bus='0'
target='0' unit='0'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git
a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-wwn+disk-scsi-duplicate-wwn.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-wwn+disk-scsi-duplicate-wwn.xml
index b3089b2006..732a27be43 100644
---
a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-wwn+disk-scsi-duplicate-wwn.xml
+++
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi-wwn+disk-scsi-duplicate-wwn.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -41,7 +44,7 @@
<alias name='scsi0-0-0-6'/>
<address type='drive' controller='0' bus='0'
target='0' unit='6'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi.xml
index 4241b3b71a..8bff04a4b6 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-scsi.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -29,7 +32,7 @@
<alias name='scsi0-0-0-5'/>
<address type='drive' controller='0' bus='0'
target='0' unit='5'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-usb.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-usb.xml
index 4202ded5b3..5964c23ba0 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-usb.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-usb.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -29,7 +32,7 @@
<alias name='usb-disk16'/>
<address type='usb' bus='0' port='1'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-virtio.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-virtio.xml
index 02851d4ca1..684b3c26de 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-virtio.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+disk-virtio.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -29,7 +32,7 @@
<alias name='virtio-disk4'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x02' function='0x0'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+guestfwd.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+guestfwd.xml
index 3bf64326c5..da5e446cf6 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+guestfwd.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+guestfwd.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+hostdev-pci.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+hostdev-pci.xml
index d8b0c80feb..e49e21c53e 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+hostdev-pci.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+hostdev-pci.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+interface-vdpa.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+interface-vdpa.xml
index f80dc42ac5..d1459d5c75 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+interface-vdpa.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+interface-vdpa.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-doorbell.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-doorbell.xml
index b0898a968b..84a1286eb5 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-doorbell.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-doorbell.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-plain.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-plain.xml
index db21d2b5ba..ac50d6bdfc 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-plain.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-plain.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+qemu-agent.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+qemu-agent.xml
index c288b502aa..0e4c3907bf 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+qemu-agent.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+qemu-agent.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog-user-alias.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog-user-alias.xml
index f54c7a4599..86c8a8bb26 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog-user-alias.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog-user-alias.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog.xml
index bd85c56ce6..11f7987964 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live+watchdog.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-live.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-live.xml
index a02bc39663..82dfef6dd0 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-live.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-live.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-base-with-scsi-controller-live.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-with-scsi-controller-live.xml
index 939cea4cbe..29e4008070 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-base-with-scsi-controller-live.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-base-with-scsi-controller-live.xml
@@ -13,13 +13,16 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git
a/tests/qemuhotplugtestdomains/qemuhotplug-base-without-scsi-controller-live+disk-scsi-2.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-base-without-scsi-controller-live+disk-scsi-2.xml
index 97f651374d..6044179cbb 100644
---
a/tests/qemuhotplugtestdomains/qemuhotplug-base-without-scsi-controller-live+disk-scsi-2.xml
+++
b/tests/qemuhotplugtestdomains/qemuhotplug-base-without-scsi-controller-live+disk-scsi-2.xml
@@ -13,6 +13,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -29,7 +32,7 @@
<alias name='scsi3-0-6'/>
<address type='drive' controller='3' bus='0'
target='0' unit='6'/>
</disk>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git
a/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live+console-virtio.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live+console-virtio.xml
index 72516555a0..24d061ea7b 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live+console-virtio.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live+console-virtio.xml
@@ -16,6 +16,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -45,7 +48,7 @@
<alias name='ide'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x1'/>
</controller>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live.xml
index 6197a2bfe3..1665a9e3ea 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-console-compat-2-live.xml
@@ -16,6 +16,9 @@
<apic/>
<pae/>
</features>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>qemu64</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -45,7 +48,7 @@
<alias name='ide'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x1'/>
</controller>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x2'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live+hostdev-pci.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live+hostdev-pci.xml
index 6a60a388a9..13d10e57aa 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live+hostdev-pci.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live+hostdev-pci.xml
@@ -8,6 +8,9 @@
<type arch='ppc64' machine='pseries'>hvm</type>
<boot dev='hd'/>
</os>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>POWER9</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -24,7 +27,7 @@
<target index='1'/>
<alias name='pci.1'/>
</controller>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='pci-ohci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x0'/>
</controller>
diff --git a/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live.xml
b/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live.xml
index e9b89a7acc..f31ae0013e 100644
--- a/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live.xml
+++ b/tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live.xml
@@ -8,6 +8,9 @@
<type arch='ppc64' machine='pseries'>hvm</type>
<boot dev='hd'/>
</os>
+ <cpu mode='custom' match='exact' check='none'>
+ <model fallback='forbid'>POWER9</model>
+ </cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -24,7 +27,7 @@
<target index='1'/>
<alias name='pci.1'/>
</controller>
- <controller type='usb' index='0'>
+ <controller type='usb' index='0' model='pci-ohci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x01' function='0x0'/>
</controller>
--
2.39.2