Note: Patch 1/7 is a bug fix for QCOW, that is also needed for VHDX This adds the initial support for VHDX image files. It supports both read and write operations, across fixed and dynamic files.
Notably, the following is not yet supported: * Differencing files * Log replay (so we will refuse to open any images that are not 'clean') * .bdrv_create() This series, and additional work to add in the above features, may be found at: https://github.com/codyprime/qemu-kvm-jtc/tree/jtc-vhdx-v1 git://github.com/codyprime/qemu-kvm-jtc.git, branch jtc-vhdx-v1 Jeff Cody (7): block: only force IO completion in .bdrv_truncate if we are shrinking qemu: add castagnoli crc32c checksum algorithm block: vhdx header for the QEMU support of VHDX images block: initial VHDX driver support framework - supports open and probe block: add read-only support to VHDX image format. block: add header update capability for VHDX images. block: add write support for VHDX images block.c | 10 +- block/Makefile.objs | 1 + block/vhdx.c | 1137 +++++++++++++++++++++++++++++++++++++++++++++++++ block/vhdx.h | 326 ++++++++++++++ include/qemu/crc32c.h | 35 ++ util/Makefile.objs | 1 + util/crc32c.c | 115 +++++ 7 files changed, 1623 insertions(+), 2 deletions(-) create mode 100644 block/vhdx.c create mode 100644 block/vhdx.h create mode 100644 include/qemu/crc32c.h create mode 100644 util/crc32c.c -- 1.8.1.4