[libvirt] [PATCH v5 0/5] Add qcow2 extensions support

Ján Tomko jtomko at redhat.com
Wed Jun 19 15:24:09 UTC 2013


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).

v5:
Use [0-9]+.[0-9]+ for compat value and enforce it in XML.
Fix broken rebase (error vs. cleanup labels).
Check if the specified feature is available with the current compat level.

v4: rebased
https://www.redhat.com/archives/libvir-list/2013-June/msg00427.html
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 (5):
  util: add support for qcow2v3 image detection
  conf: add features to volume target XML
  storage: add support for creating qcow2 images with extensions
  conf: add features to snapshot disk XML
  qemu: add qcow2 extension support to inactive external snapshots

 docs/formatsnapshot.html.in                      |   5 +
 docs/formatstorage.html.in                       |  20 +++
 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                         |  84 +++++++++++
 src/conf/snapshot_conf.h                         |   2 +
 src/conf/storage_conf.c                          |  78 +++++++++++
 src/conf/storage_conf.h                          |   7 +-
 src/libvirt_private.syms                         |   2 +
 src/qemu/qemu_driver.c                           |  88 ++++++++++--
 src/storage/storage_backend.c                    |  62 ++++++++-
 src/storage/storage_backend_fs.c                 |  10 ++
 src/util/virstoragefile.c                        | 169 ++++++++++++++++++-----
 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, 737 insertions(+), 61 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




More information about the libvir-list mailing list