[libvirt] [PATCHv3 00/43] cleaned up snapshot series

Eric Blake eblake at redhat.com
Wed Aug 24 15:22:17 UTC 2011


As promised, here is my v3, which includes all the self-replies
I was scattering throughout v2:
https://www.redhat.com/archives/libvir-list/2011-August/msg00620.html

Also available here:

git fetch git://repo.or.cz/libvirt/ericb.git snapshot

or browse online at:

http://repo.or.cz/w/libvirt/ericb.git/shortlog/refs/heads/snapshot

I've tested that this can create external disk snapshots with
SELinux running using the qemu snapshot_blkdev monitor command,
then deleting the metadata for those snapshots.

Other things from my RFC still remain to be coded:
https://www.redhat.com/archives/libvir-list/2011-August/msg00361.html
support for offline external disk snapshots
support for more flags (such as starting an offline snapshot on revert)
support for revert and delete of disk snapshots
new apis for easier manipulation of snapshot hierarchies

Eric Blake (43):
  snapshot: better event when reverting qemu to paused snapshot
  snapshot: improve reverting to qemu paused snapshots
  snapshot: properly revert qemu to offline snapshots
  snapshot: don't leak resources on qemu snapshot failure
  snapshot: only pass snapshot to qemu command line when reverting
  snapshot: track current snapshot across restarts
  snapshot: allow deletion of just snapshot metadata
  snapshot: avoid crash when deleting qemu snapshots
  snapshot: simplify acting on just children
  snapshot: let qemu discard only snapshot metadata
  snapshot: identify which snapshots have metadata
  snapshot: identify qemu snapshot roots
  snapshot: prevent stranding snapshot data on domain destruction
  snapshot: refactor some qemu code
  snapshot: cache qemu-img location
  snapshot: support new undefine flags in qemu
  snapshot: teach virsh about new undefine flags
  snapshot: prevent migration from stranding snapshot data
  snapshot: refactor domain xml output
  snapshot: allow full domain xml in snapshot
  snapshot: correctly escape generated xml
  snapshot: update rng to support full domain in xml
  snapshot: store qemu domain details in xml
  snapshot: additions to domain xml for disks
  snapshot: reject transient disks where code is not ready
  snapshot: reflect recent options in virsh
  snapshot: introduce new deletion flag
  snapshot: expose new delete flag in virsh
  snapshot: allow halting after snapshot
  snapshot: refactor virsh snapshot creation
  snapshot: expose halt-after-creation in virsh
  snapshot: wire up new qemu monitor command
  snapshot: support extra state in snapshots
  snapshot: add <disks> to snapshot xml
  snapshot: also support disks by path
  snapshot: add virsh domblklist command
  snapshot: add flag for requesting disk snapshot
  snapshot: reject unimplemented disk snapshot features
  snapshot: make it possible to audit external snapshot
  snapshot: wire up disk-only flag to snapshot-create
  snapshot: wire up live qemu disk snapshots
  snapshot: refactor qemu file opening
  snapshot: use SELinux and lock manager with external snapshots

 docs/formatdomain.html.in                          |   40 +-
 docs/formatsnapshot.html.in                        |  253 ++-
 docs/schemas/Makefile.am                           |    1 +
 docs/schemas/domain.rng                            | 2555 +-------------------
 docs/schemas/{domain.rng => domaincommon.rng}      |   32 +-
 docs/schemas/domainsnapshot.rng                    |   89 +-
 include/libvirt/libvirt.h.in                       |   62 +-
 src/conf/domain_audit.c                            |   12 +-
 src/conf/domain_audit.h                            |    4 +-
 src/conf/domain_conf.c                             |  861 ++++++--
 src/conf/domain_conf.h                             |   75 +-
 src/esx/esx_driver.c                               |   41 +-
 src/libvirt.c                                      |  132 +-
 src/libvirt_private.syms                           |    8 +
 src/libxl/libxl_conf.c                             |    5 +
 src/libxl/libxl_driver.c                           |   11 +-
 src/qemu/qemu_command.c                            |   12 +-
 src/qemu/qemu_conf.h                               |    1 +
 src/qemu/qemu_driver.c                             | 1611 +++++++++----
 src/qemu/qemu_hotplug.c                            |   18 +-
 src/qemu/qemu_migration.c                          |    2 +-
 src/qemu/qemu_monitor.c                            |   24 +
 src/qemu/qemu_monitor.h                            |    4 +
 src/qemu/qemu_monitor_json.c                       |   33 +
 src/qemu/qemu_monitor_json.h                       |    4 +
 src/qemu/qemu_monitor_text.c                       |   40 +
 src/qemu/qemu_monitor_text.h                       |    4 +
 src/qemu/qemu_process.c                            |   21 +-
 src/qemu/qemu_process.h                            |    1 +
 src/uml/uml_driver.c                               |   56 +-
 src/vbox/vbox_tmpl.c                               |   46 +-
 src/xen/xend_internal.c                            |   12 +-
 src/xenxs/xen_sxpr.c                               |    5 +
 src/xenxs/xen_xm.c                                 |    5 +
 tests/domainsnapshotxml2xmlin/disk_snapshot.xml    |   16 +
 tests/domainsnapshotxml2xmlout/disk_snapshot.xml   |   77 +
 tests/domainsnapshotxml2xmlout/full_domain.xml     |   35 +
 .../qemuxml2argv-disk-snapshot.args                |    7 +
 .../qemuxml2argv-disk-snapshot.xml                 |   39 +
 .../qemuxml2argv-disk-transient.xml                |   27 +
 tests/qemuxml2argvtest.c                           |    2 +
 tools/virsh.c                                      |  755 +++++-
 tools/virsh.pod                                    |  111 +-
 43 files changed, 3616 insertions(+), 3533 deletions(-)
 copy docs/schemas/{domain.rng => domaincommon.rng} (98%)
 create mode 100644 tests/domainsnapshotxml2xmlin/disk_snapshot.xml
 create mode 100644 tests/domainsnapshotxml2xmlout/disk_snapshot.xml
 create mode 100644 tests/domainsnapshotxml2xmlout/full_domain.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-transient.xml

-- 
1.7.4.4




More information about the libvir-list mailing list