Since 1.1 [1], QEMU supports qcow2 version 3 images. These are still
reffered to as qcow2 everywhere (qmp, qemu/qemu-img command line).
This format (besides some internal improvements) includes a bitfield of
compatible/incompatible/auto-clear features. [2]
The only feature so far is delayed refcount updating (since 1.2 [3]),
which is compatible with 1.1 if the file has been closed properly, if
not it has the dirty flag set.
For qcow2v3 images, -o compat=1.1 has to be passed to qemu-img.
(compat=0.10 means qcow2 which is the default at the moment)
For delayed refcount updates it's -o lazy_refcounts=on.
Using these options would require parsing 'qemu-img create -f qcow2 -o ?
/dev/null' output, or assuming they are supported.
Do we need a new format type (qcow2v3) that translates to qcow2 for
qemu, or would XML like this be enough?
<target>
<path>/var/lib/libvirt/images/image</path>
<format type='qcow2'/>
<features version='1.1'>
<lazy_refcounts compatible="no"/>
</features>
...
</target>
Jan
[1]
http://git.qemu.org/?p=qemu.git;a=commitdiff;h=6744cbab8
[2]
http://lists.gnu.org/archive/html/qemu-devel/2012-04/msg03077.html
[3]
http://git.qemu.org/?p=qemu.git;a=commitdiff;h=bfe8043e9