From 09ebc10fe1749f6f57978c8604297734f3311761 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1n=20Tomko?= Date: Wed, 3 Jun 2015 17:02:42 +0200 Subject: [PATCH] Only call qemuMonitorGetMemoryStats for virtio memballoon There is nothing to get from the monitor for model='none'. --- src/qemu/qemu_driver.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 50eebf91c5..4690406196 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -11599,14 +11599,19 @@ qemuDomainMemoryStats(virDomainPtr dom, goto endjob; } - priv = vm->privateData; - qemuDomainObjEnterMonitor(driver, vm); - ret = qemuMonitorGetMemoryStats(priv->mon, stats, nr_stats); - if (qemuDomainObjExitMonitor(driver, vm) < 0) - ret = -1; + if (vm->def->memballoon && + vm->def->memballoon->model == VIR_DOMAIN_MEMBALLOON_MODEL_VIRTIO) { + priv = vm->privateData; + qemuDomainObjEnterMonitor(driver, vm); + ret = qemuMonitorGetMemoryStats(priv->mon, stats, nr_stats); + if (qemuDomainObjExitMonitor(driver, vm) < 0) + ret = -1; - if (ret < 0 || ret >= nr_stats) - goto endjob; + if (ret < 0 || ret >= nr_stats) + goto endjob; + } else { + ret = 0; + } if (qemuGetProcessInfo(NULL, NULL, &rss, vm->pid, 0) < 0) { virReportError(VIR_ERR_OPERATION_FAILED, "%s", -- GitLab