]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: cold-plug of watchdog
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 5 Sep 2017 07:51:46 +0000 (09:51 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 12 Sep 2017 13:59:32 +0000 (15:59 +0200)
https://bugzilla.redhat.com/show_bug.cgi?id=1447169

With this patch users can cold plug a watchdog. Things are pretty
simple because a domain can have at most one watchdog device.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
src/qemu/qemu_driver.c

index 70cdc88e1b63c0f05dbcedcb963d3acc84038af4..7c62ec01b9afd27ca2290734e7d0f2b1d0b66c1f 100644 (file)
@@ -7995,10 +7995,18 @@ qemuDomainAttachDeviceConfig(virDomainDefPtr vmdef,
         dev->data.shmem = NULL;
         break;
 
+    case VIR_DOMAIN_DEVICE_WATCHDOG:
+        if (vmdef->watchdog) {
+            virReportError(VIR_ERR_OPERATION_INVALID, "%s",
+                           _("domain already has a watchdog"));
+            return -1;
+        }
+        VIR_STEAL_PTR(vmdef->watchdog, dev->data.watchdog);
+        break;
+
     case VIR_DOMAIN_DEVICE_INPUT:
     case VIR_DOMAIN_DEVICE_SOUND:
     case VIR_DOMAIN_DEVICE_VIDEO:
-    case VIR_DOMAIN_DEVICE_WATCHDOG:
     case VIR_DOMAIN_DEVICE_GRAPHICS:
     case VIR_DOMAIN_DEVICE_HUB:
     case VIR_DOMAIN_DEVICE_SMARTCARD: