On Fri, Jul 26, 2013 at 13:47:43 -0400, mrhines(a)linux.vnet.ibm.com wrote:
From: "Michael R. Hines" <mrhines(a)us.ibm.com>
Previously, QEMU's 'setup' state was no a formal state in their
state machine, but it is now. This state is used by RDMA to optionally
perform memory pinning. This state is now exposed over the monitor
and also measured in the migration info status.
This patch consumes both the new setup state as well as the timestamp
of the total time spent in that state as reported by QEMU.
RDMA migrations perform an optional 'pin-all' operation du
Signed-off-by: Michael R. Hines <mrhines(a)us.ibm.com>
---
include/libvirt/libvirt.h.in | 2 ++
src/qemu/qemu_migration.c | 6 ++++++
src/qemu/qemu_monitor.c | 2 +-
src/qemu/qemu_monitor.h | 11 +++++++++++
src/qemu/qemu_monitor_json.c | 18 ++++++++++++++++++
5 files changed, 38 insertions(+), 1 deletion(-)
diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
index c0eb25b..31fb37e 100644
--- a/include/libvirt/libvirt.h.in
+++ b/include/libvirt/libvirt.h.in
@@ -4048,6 +4048,8 @@ struct _virDomainJobInfo {
/* Time is measured in mill-seconds */
unsigned long long timeElapsed; /* Always set */
unsigned long long timeRemaining; /* Only for VIR_DOMAIN_JOB_BOUNDED */
+ unsigned long long setupTime; /* length of the SETUP phase */
+ double mbps; /* Migration throughput in Mbps */
/* Data is measured in bytes unless otherwise specified
* and is measuring the job as a whole
NACK
You can't change content of existing C structures that are part or
public API. Running make syntax-check will warn you when you try to do
that. Look at virDomainGetJobStats (commits v1.0.2-239-g4dd00f4 to
v1.0.2-244-g4121a77) which can return extended migration statistics.
Jirka