[PATCH 15/21] qemuDomainGetStatsCpuCache: Don't error out

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The bulk domain stats API is meant to collect as much data as possible
without erroring out.

If fetching of the cache stats fails just skip outputing them.

Signed-off-by: Peter Krempa <pkrempa@xxxxxxxxxx>
---
 src/qemu/qemu_driver.c | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index e2db449a7a..efb6e2c454 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -16760,7 +16760,7 @@ qemuDomainGetStatsMemoryBandwidth(virQEMUDriver *driver,
 }


-static int
+static void
 qemuDomainGetStatsCpuCache(virQEMUDriver *driver,
                            virDomainObj *dom,
                            virTypedParamList *params)
@@ -16769,14 +16769,16 @@ qemuDomainGetStatsCpuCache(virQEMUDriver *driver,
     size_t nresdata = 0;
     size_t i = 0;
     size_t j = 0;
-    int ret = -1;

     if (!virDomainObjIsActive(dom))
-        return 0;
+        return;

     if (qemuDomainGetResctrlMonData(driver, dom, &resdata, &nresdata,
-                                    VIR_RESCTRL_MONITOR_TYPE_CACHE) < 0)
-        goto cleanup;
+                                    VIR_RESCTRL_MONITOR_TYPE_CACHE) < 0) {
+        /* don't return cache stats if we can't fetch them */
+        virResetLastError();
+        return;
+    }

     virTypedParamListAddUInt(params, nresdata, "cpu.cache.monitor.count");

@@ -16803,12 +16805,9 @@ qemuDomainGetStatsCpuCache(virQEMUDriver *driver,
         }
     }

-    ret = 0;
- cleanup:
     for (i = 0; i < nresdata; i++)
         qemuDomainFreeResctrlMonData(resdata[i]);
     VIR_FREE(resdata);
-    return ret;
 }


@@ -16956,8 +16955,7 @@ qemuDomainGetStatsCpu(virQEMUDriver *driver,
         qemuDomainGetStatsCpuProc(dom, params);
     }

-    if (qemuDomainGetStatsCpuCache(driver, dom, params) < 0)
-        return -1;
+    qemuDomainGetStatsCpuCache(driver, dom, params);

     qemuDomainGetStatsCpuHaltPollTime(dom, params, privflags);

-- 
2.48.1




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux