Re: [PATCH v5 2/5] migration/dirtyrate: Implement qemuDomainCalculateDirtyRate

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

 



On 2/1/21 10:55 AM, Hao Wang wrote:
Implement qemuDomainCalculateDirtyRate which calculates domain's memory
dirty rate calling qmp "calc-dirty-rate".

Signed-off-by: Hao Wang <wanghao232@xxxxxxxxxx>
Signed-off-by: Zhou Yimin <zhouyimin@xxxxxxxxxx>
Reviewed-by: Chuan Zheng <zhengchuan@xxxxxxxxxx>
---
  src/qemu/qemu_migration.c    | 25 +++++++++++++++++++++++++
  src/qemu/qemu_migration.h    |  5 +++++
  src/qemu/qemu_monitor.c      | 12 ++++++++++++
  src/qemu/qemu_monitor.h      |  4 ++++
  src/qemu/qemu_monitor_json.c | 22 ++++++++++++++++++++++
  src/qemu/qemu_monitor_json.h |  4 ++++
  6 files changed, 72 insertions(+)



diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c
index 8a75a2734e..bb85513aa6 100644
--- a/src/qemu/qemu_monitor_json.c
+++ b/src/qemu/qemu_monitor_json.c
@@ -9452,3 +9452,25 @@ qemuMonitorJSONGetCPUMigratable(qemuMonitorPtr mon,
      return virJSONValueGetBoolean(virJSONValueObjectGet(reply, "return"),
                                    migratable);
  }
+
+
+int
+qemuMonitorJSONCalculateDirtyRate(qemuMonitorPtr mon,
+                                  int sec)
+{
+    g_autoptr(virJSONValue) cmd = NULL;
+    g_autoptr(virJSONValue) reply = NULL;
+
+    if (!(cmd = qemuMonitorJSONMakeCommand("calc-dirty-rate",
+                                           "I:calc-time", sec,

I don't think that this is correct. "I" stands for long long, but @sec is just an int. I believe this would break on 32bits.

+                                           NULL)))
+        return -1;
+
+    if (qemuMonitorJSONCommand(mon, cmd, &reply) < 0)
+        return -1;
+
+    if (qemuMonitorJSONCheckError(cmd, reply) < 0)
+        return -1;
+
+    return 0;
+}

Michal




[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