v1: https://www.redhat.com/archives/libvir-list/2017-November/msg00731.html

Differences from v1 (besides more patches)

Rather than use a timing loop in order to fetch the dump stats and
the presence of the 'query-dump' command, let's use the DUMP_COMPLETED
event and wire that up in order to determine when the dump has been
completed. In the mean time, the previous timing loop is converted into
a qemuDomainGetJobInfoDumpStats to be called if the "right conditions"
exist.  Also found/fixed a couple of minor issues from v1 regarding
usage "dumpformat" instead of just "format" from my patch 2 adjustment
and a type for qemuMonitorDumpStatus (was qemuMontiorDumpStatus in v1).


NB: (from v1 cover):

Details in the patches. Essentially though QEMU 2.6 added the ability
to perform the 'dump-guest-memory' via a thread by adding a 'detach'
boolean to the command. In order to watch the progress of the thread
the 'query-dump' command was added. The query-dump will return just
the current status, the total size to be dumped, and the current
progress. So using the migrate stats data in the DomainJobInfo we
can then save our current progress allowing tools such as virsh to
watch that progress.  As an added benefit, the dump-guest-memory is
now truly asynchronous.

John Ferlan (10):
  qemu: Clean up style for the qemuDumpToFd definition
  qemu: Alter dump-guest-memory command generation
  qemu: Add support for DUMP_COMPLETED event
  qemu: Introduce qemuProcessHandleDumpCompleted
  qemu: Introduce qemuMonitor[JSON]QueryDump
  qemu: Add new parameter to qemuMonitorDumpToFd
  qemu: Introduce qemuDomainGetJobInfoMigrationStats
  qemu: Introduce qemuDomainGetJobInfoDumpStats
  qemu: Add dump completed event to the capabilities
  qemu: Allow showing the dump progress for memory only dump

 src/qemu/qemu_capabilities.c                       |   2 +
 src/qemu/qemu_capabilities.h                       |   1 +
 src/qemu/qemu_domain.c                             |   2 +
 src/qemu/qemu_domain.h                             |   2 +
 src/qemu/qemu_driver.c                             | 157 ++++++++++++++++++---
 src/qemu/qemu_monitor.c                            |  39 ++++-
 src/qemu/qemu_monitor.h                            |  33 ++++-
 src/qemu/qemu_monitor_json.c                       | 122 ++++++++++++++--
 src/qemu/qemu_monitor_json.h                       |   7 +-
 src/qemu/qemu_process.c                            |  23 +++
 .../caps_2.10.0-gicv2.aarch64.xml                  |   1 +
 .../caps_2.10.0-gicv3.aarch64.xml                  |   1 +
 tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml  |   1 +
 .../caps_2.6.0-gicv2.aarch64.xml                   |   1 +
 .../caps_2.6.0-gicv3.aarch64.xml                   |   1 +
 tests/qemucapabilitiesdata/caps_2.6.0.ppc64.xml    |   1 +
 tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml    |   1 +
 tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml    |   1 +
 tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.9.0.ppc64.xml    |   1 +
 tests/qemucapabilitiesdata/caps_2.9.0.s390x.xml    |   1 +
 tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml   |   1 +
 tests/qemumonitorjsontest.c                        |   3 +-
 27 files changed, 365 insertions(+), 42 deletions(-)

-- 
2.13.6

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to