This set consists of multiple parts:
The first 4 patches are a rebase of Eric's series to add
external checkpoint support to the XML. I posted them as
I had some conflicts to solve when rebasing them lately.
Patches 5-10 are a re-send of my previously posted series to
add ability to create external checkpoints. These are only
rebased and I did _not_ apply review feedback to them.
Patches 11-20 are new and consist of a few cleanups
and refactors to implement needed functionality to revert an
external snapshot. There are three new features:
1) creation of offline external snapshots
2) deletion of external snapshots (with a few limitations)
3) reverting of external snapshots
When this series will be closer to being "pushable" I'll post
another cleanup that will split out all snapshot related
code in qemu into a separate file as it's a mess right now.
Eric Blake (4):
snapshot: new XML for external system checkpoint
snapshot: improve disk align checking
snapshot: populate new XML info for qemu snapshots
snapshot: merge pre-snapshot checks
Peter Krempa (16):
qemu: Split out code to save domain memory to allow reuse
snapshot: Add flag to enable creating checkpoints in paused state
snapshot: qemu: Add async job type for snapshots
snapshot: qemu: Rename qemuDomainSnapshotCreateActive
snapshot: qemu: Add support for external checkpoints
snapshot: qemu: Remove restrictions preventing external snapshots
qemu: snapshot: Clean up snapshot retrieval to use the new helper
qemu: Split out guts of qemuDomainSaveImageStartVM() to allow reuse
snapshot: qemu: Add flag VIR_DOMAIN_SNAPSHOT_REVERT_STOPPED
snapshot: qemu: Add support for external inactive snapshots
conf: Fix private symbols exported by files in conf
conf: Add helper to determine if snapshot is external
snapshot: qemu: Add detail option for PMSUSPENDED event.
snapshot: qemu: Fix detection of external snapshots when deleting
snapshot: qemu: Add support for external snapshot deletion.
snapshot: qemu: Implement reverting of external snapshots
docs/formatsnapshot.html.in | 11 +
docs/schemas/domainsnapshot.rng | 23 +
examples/domain-events/events-c/event-test.c | 3 +
include/libvirt/libvirt.h.in | 7 +
src/conf/snapshot_conf.c | 102 +-
src/conf/snapshot_conf.h | 6 +
src/libvirt.c | 9 +-
src/libvirt_private.syms | 48 +-
src/qemu/qemu_domain.c | 125 ++-
src/qemu/qemu_domain.h | 1 +
src/qemu/qemu_driver.c | 1111 ++++++++++++++------
src/qemu/qemu_process.c | 19 +
tests/domainsnapshotxml2xmlin/external_vm.xml | 10 +
tests/domainsnapshotxml2xmlin/noparent.xml | 9 +
tests/domainsnapshotxml2xmlout/all_parameters.xml | 1 +
tests/domainsnapshotxml2xmlout/disk_snapshot.xml | 1 +
tests/domainsnapshotxml2xmlout/external_vm.xml | 43 +
tests/domainsnapshotxml2xmlout/full_domain.xml | 1 +
tests/domainsnapshotxml2xmlout/metadata.xml | 1 +
tests/domainsnapshotxml2xmlout/noparent.xml | 1 +
.../noparent_nodescription.xml | 1 +
.../noparent_nodescription_noactive.xml | 1 +
tests/domainsnapshotxml2xmltest.c | 1 +
tools/virsh-domain-monitor.c | 2 +
tools/virsh-snapshot.c | 9 +
tools/virsh.pod | 21 +-
26 files changed, 1207 insertions(+), 360 deletions(-)
create mode 100644 tests/domainsnapshotxml2xmlin/external_vm.xml
create mode 100644 tests/domainsnapshotxml2xmlin/noparent.xml
create mode 100644 tests/domainsnapshotxml2xmlout/external_vm.xml
--
1.7.12.4