Since QEMU 1.1 qcow2 supports a features bitfield, allowing
to implement additional features without breaking compatibility
with older QEMU versions.
The version header on-disk is bumped to 3, however the format name
is still 'qcow2', not 'qcow3' (which is what I used in v2).
v4: rebased
v3:
https://www.redhat.com/archives/libvir-list/2013-May/msg01179.html
v2:
https://www.redhat.com/archives/libvir-list/2013-February/msg00212.html
qcow2 vs. qcow3 discussion:
https://www.redhat.com/archives/libvir-list/2013-March/msg00094.html
Ján Tomko (7):
storage: rework qemu-img command line generation
util: add support for qcow2v3 image detection
conf: add features to volume target XML
storage: add support for creating qcow2 images with extensions
conf: split out snapshot disk XML formatting
Add qcow2 features support to snapshots
qemu: add qcow2 extension support to inactive external snapshots
docs/formatsnapshot.html.in | 5 +
docs/formatstorage.html.in | 19 +++
docs/schemas/Makefile.am | 1 +
docs/schemas/domainsnapshot.rng | 7 +
docs/schemas/storagefilefeatures.rng | 24 ++++
docs/schemas/storagevol.rng | 7 +
libvirt.spec.in | 1 +
mingw-libvirt.spec.in | 2 +
src/conf/snapshot_conf.c | 127 ++++++++++++++----
src/conf/snapshot_conf.h | 2 +
src/conf/storage_conf.c | 74 ++++++++++
src/conf/storage_conf.h | 7 +-
src/libvirt_private.syms | 2 +
src/qemu/qemu_driver.c | 72 +++++++---
src/storage/storage_backend.c | 143 +++++++++++++-------
src/storage/storage_backend_fs.c | 10 ++
src/util/virstoragefile.c | 164 ++++++++++++++++++-----
src/util/virstoragefile.h | 12 ++
tests/domainsnapshotxml2xmlin/disk_snapshot.xml | 5 +
tests/domainsnapshotxml2xmlout/disk_snapshot.xml | 4 +
tests/storagevolxml2argvdata/qcow2-1.1.argv | 1 +
tests/storagevolxml2argvdata/qcow2-lazy.argv | 1 +
tests/storagevolxml2argvdata/vol-qcow2-1.1.xml | 32 +++++
tests/storagevolxml2argvdata/vol-qcow2-lazy.xml | 35 +++++
tests/storagevolxml2argvtest.c | 2 +
tests/storagevolxml2xmlin/vol-qcow2-1.1.xml | 32 +++++
tests/storagevolxml2xmlin/vol-qcow2-lazy.xml | 35 +++++
tests/storagevolxml2xmlout/vol-qcow2-1.1.xml | 33 +++++
tests/storagevolxml2xmlout/vol-qcow2-lazy.xml | 35 +++++
tests/storagevolxml2xmltest.c | 2 +
30 files changed, 766 insertions(+), 130 deletions(-)
create mode 100644 docs/schemas/storagefilefeatures.rng
create mode 100644 tests/storagevolxml2argvdata/qcow2-1.1.argv
create mode 100644 tests/storagevolxml2argvdata/qcow2-lazy.argv
create mode 100644 tests/storagevolxml2argvdata/vol-qcow2-1.1.xml
create mode 100644 tests/storagevolxml2argvdata/vol-qcow2-lazy.xml
create mode 100644 tests/storagevolxml2xmlin/vol-qcow2-1.1.xml
create mode 100644 tests/storagevolxml2xmlin/vol-qcow2-lazy.xml
create mode 100644 tests/storagevolxml2xmlout/vol-qcow2-1.1.xml
create mode 100644 tests/storagevolxml2xmlout/vol-qcow2-lazy.xml
--
1.8.1.5