v2:
https://www.redhat.com/archives/libvir-list/2018-January/msg00636.html
Summary of changes since v2:
* Generate a dump stats extraction helper in order to share with the
DUMP_COMPLETED event and the query-dump command. Additionally add the
error string from Qemu to be processed later
* When processing DUMP_COMPLETED event implementation, use the returned
stats buffer and copy any error message for the waiting completion to
process properly.
NB: Was able to test this by altering the guest memory size larger
than the space to store the dump memory and got the following error:
error: operation failed: memory-only dump failed: dump: failed to save memory
* As suggested during review - alter the jobInfo @stats to be part of
a union. Took the liberty to rename the fields as well.
* The point raised in patch 5 regarding mirrorStats being collect for a
non-migration (e.g. save and dump) was handled by creating a new type
which will use the migStats only to collect data and avoid the mirrorStats.
When converting to a JobInfo, only the migStats will then be used.
* Patches 6 and 7 are new. One for the union and one to separate migrate
and save/dump style migration jobs.
* Former patch 6 (now 8) is altered to handle the union separation
* Former patch 8 (now 10) is altered mainly to handle the data in
buffers from the DUMP_COMPLETED event (either data or error).
NB: Comment from former patch 8:
"We should update job.completed at this point."
I believe that's handled because qemuDomainObjResetAsyncJob will
reset the dumpCompleted back to false. Unless there's a specific
reason to do it there...
NB: Formerly ACK'd patches 4 and 7 (now 9) did not change.
John Ferlan (11):
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: Convert jobInfo stats into a union
qemu: Introduce QEMU_DOMAIN_JOB_STATS_TYPE_SAVEDUMP
qemu: Introduce qemuDomainGetJobInfoDumpStats
qemu: Add dump completed event to the capabilities
qemu: Allow showing the dump progress for memory only dump
docs: Add news article for query memory-only dump processing
percentage
docs/news.xml | 11 ++
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_domain.c | 130 +++++++++++++--
src/qemu/qemu_domain.h | 18 +-
src/qemu/qemu_driver.c | 183 ++++++++++++++++++---
src/qemu/qemu_migration.c | 13 +-
src/qemu/qemu_migration_cookie.c | 4 +-
src/qemu/qemu_monitor.c | 45 ++++-
src/qemu/qemu_monitor.h | 36 +++-
src/qemu/qemu_monitor_json.c | 106 +++++++++++-
src/qemu/qemu_monitor_json.h | 6 +-
src/qemu/qemu_process.c | 34 +++-
.../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 +-
30 files changed, 553 insertions(+), 55 deletions(-)
--
2.13.6