While this is not quite ready to be merged, I think the important stuff is done and works (it survives qemu-iotests at least) and probably now is the right time to start getting feedback. I'm going to get this merged before the 1.1 soft freeze.
What's left is probably some cleanup, adding more new test cases and obviously fixing whatever bugs come up. Kevin Wolf (15): Specification for qcow2 version 3 qcow2: Ignore reserved bits in get_cluster_offset qcow2: Ignore reserved bits in count_contiguous_clusters() qcow2: Fail write_compressed when overwriting data qcow2: Ignore reserved bits in L1/L2 entries qcow2: Refactor qcow2_free_any_clusters qcow2: Simplify count_cow_clusters qcow2: Ignore reserved bits in refcount table entries qcow2: Ignore reserved bits in check_refcounts qcow2: Version 3 images qcow2: Support reading zero clusters qcow2: Support for feature table header extension qemu-iotests: Test COW with zero clusters qcow2: Zero write support qemu-iotests: use qcow3 Paolo Bonzini (1): qemu-iotests: add a simple test for write_zeroes block.c | 14 ++- block/qcow2-cluster.c | 224 ++++++++++++++++++++++++++---------- block/qcow2-refcount.c | 156 ++++++++++++++----------- block/qcow2.c | 260 ++++++++++++++++++++++++++++++++++++++---- block/qcow2.h | 58 +++++++++- block_int.h | 1 + docs/specs/qcow2.txt | 129 +++++++++++++++++---- tests/qemu-iotests/031 | 137 ++++++++++++++++++++++ tests/qemu-iotests/031.out | 109 ++++++++++++++++++ tests/qemu-iotests/common.rc | 21 ++++- tests/qemu-iotests/group | 1 + 11 files changed, 932 insertions(+), 178 deletions(-) create mode 100755 tests/qemu-iotests/031 create mode 100644 tests/qemu-iotests/031.out -- 1.7.6.5