Previously, specific functions had to be used to test updating devices,
different for every device type. It was too much trouble and noone
bothered with it.
qemuDomainUpdateDeviceLiveAndConfig is now being used instead.
---
src/qemu/qemu_driver.c | 2 +-
src/qemu/qemu_driverpriv.h | 7 +++++++
tests/qemuhotplugtest.c | 10 +++++++---
3 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index f650766..b10efd4 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -8202,7 +8202,7 @@ static int qemuDomainAttachDevice(virDomainPtr dom, const char
*xml)
VIR_DOMAIN_AFFECT_LIVE);
}
-static int
+int
qemuDomainUpdateDeviceLiveAndConfig(virConnectPtr conn,
virDomainObjPtr vm,
virQEMUDriverPtr driver,
diff --git a/src/qemu/qemu_driverpriv.h b/src/qemu/qemu_driverpriv.h
index 943f0da..2a71a00 100644
--- a/src/qemu/qemu_driverpriv.h
+++ b/src/qemu/qemu_driverpriv.h
@@ -37,4 +37,11 @@ int qemuDomainDetachDeviceLiveAndConfig(virQEMUDriverPtr driver,
const char *xml,
unsigned int flags);
+int
+qemuDomainUpdateDeviceLiveAndConfig(virConnectPtr conn,
+ virDomainObjPtr vm,
+ virQEMUDriverPtr driver,
+ const char *xml,
+ unsigned int flags);
+
#endif /* __QEMU_DRIVERPRIV_H__ */
diff --git a/tests/qemuhotplugtest.c b/tests/qemuhotplugtest.c
index 13d2bdc..115dc1e 100644
--- a/tests/qemuhotplugtest.c
+++ b/tests/qemuhotplugtest.c
@@ -158,7 +158,9 @@ testQemuHotplugDetach(virDomainObjPtr vm,
static int
testQemuHotplugUpdate(virDomainObjPtr vm,
- virDomainDeviceDefPtr dev)
+ virDomainDeviceDefPtr dev,
+ const char *device_xml,
+ virDomainModificationImpact impact)
{
int ret = -1;
@@ -169,7 +171,9 @@ testQemuHotplugUpdate(virDomainObjPtr vm,
* required object, we can replace this code then. */
switch (dev->type) {
case VIR_DOMAIN_DEVICE_GRAPHICS:
- ret = qemuDomainChangeGraphics(&driver, vm, dev->data.graphics);
+ /* conn is only used for storage lookup, so passing NULL should be safe. */
+ ret = qemuDomainUpdateDeviceLiveAndConfig(NULL, vm, &driver,
+ device_xml, impact);
break;
default:
VIR_TEST_VERBOSE("device type '%s' cannot be updated\n",
@@ -350,7 +354,7 @@ testQemuHotplug(const void *data)
break;
case UPDATE:
- ret = testQemuHotplugUpdate(vm, dev);
+ ret = testQemuHotplugUpdate(vm, dev, device_xml, impact);
}
cleanup:
--
1.9.1