]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu_domain_address: fix CCW virtio-mem hotplug
authorBoris Fiuczynski <fiuczy@linux.ibm.com>
Tue, 18 Mar 2025 13:48:50 +0000 (14:48 +0100)
committerJán Tomko <jtomko@redhat.com>
Tue, 18 Mar 2025 16:59:33 +0000 (17:59 +0100)
Since commit f23f8ff91a virtio-mem supports also CCW. When hotplugging a
virtio-mem device with a CCW address results in a PCI device getting
attached. The method qemuDomainAssignMemoryDeviceSlot is only
considering PCI as address type and overwriting the CCW address. Adding
support for address type CCW.

Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
src/qemu/qemu_domain_address.c

index d38983bf631aad1eed78efc9cdec53430b949ba3..5b94c276798078ffcb5f6a036d3f1b59413883e3 100644 (file)
@@ -3067,6 +3067,7 @@ qemuDomainAssignMemoryDeviceSlot(virDomainObj *vm,
                                  virDomainMemoryDef *mem)
 {
     g_autoptr(virBitmap) slotmap = NULL;
+    bool releaseaddr = false;
     virDomainDeviceDef dev = {.type = VIR_DOMAIN_DEVICE_MEMORY, .data.memory = mem};
 
     switch (mem->model) {
@@ -3080,7 +3081,7 @@ qemuDomainAssignMemoryDeviceSlot(virDomainObj *vm,
 
     case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_PMEM:
     case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_MEM:
-        return qemuDomainEnsurePCIAddress(vm, &dev);
+        return qemuDomainEnsureVirtioAddress(&releaseaddr, vm, &dev);
         break;
 
     case VIR_DOMAIN_MEMORY_MODEL_SGX_EPC: