Depending on the memballoon model, the corresponding QOM node will have a different type and we need to account for this when searching for it in the QOM tree. https://bugzilla.redhat.com/show_bug.cgi?id=1911786 Signed-off-by: Andrea Bolognani <abologna@xxxxxxxxxx> --- src/qemu/qemu_monitor.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index b5c0364652..c97dadd11e 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -1017,7 +1017,27 @@ qemuMonitorInitBalloonObjectPath(qemuMonitorPtr mon, switch (balloon->info.type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: - name = "virtio-balloon-pci"; + switch (balloon->model) { + case VIR_DOMAIN_MEMBALLOON_MODEL_VIRTIO: + name = "virtio-balloon-pci"; + break; + case VIR_DOMAIN_MEMBALLOON_MODEL_VIRTIO_TRANSITIONAL: + name = "virtio-balloon-pci-transitional"; + break; + case VIR_DOMAIN_MEMBALLOON_MODEL_VIRTIO_NON_TRANSITIONAL: + name = "virtio-balloon-pci-non-transitional"; + break; + case VIR_DOMAIN_MEMBALLOON_MODEL_XEN: + case VIR_DOMAIN_MEMBALLOON_MODEL_NONE: + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("invalid model for virtio-balloon-pci")); + return; + case VIR_DOMAIN_MEMBALLOON_MODEL_LAST: + default: + virReportEnumRangeError(virDomainMemballoonModel, + balloon->model); + return; + } break; case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW: name = "virtio-balloon-ccw"; -- 2.26.2