[PATCH v2 0/3] block/vmdk: fixes for stream optimized disks

Sanne Raymaekers posted 3 patches 1 week, 6 days ago
There is a newer version of this series
block/vmdk.c | 117 ++++++++++++++++++++++++++++++---------------------
1 file changed, 70 insertions(+), 47 deletions(-)
[PATCH v2 0/3] block/vmdk: fixes for stream optimized disks
Posted by Sanne Raymaekers 1 week, 6 days ago
The stream optimized disks produced by qemu-img did not quite adhere to
the specification. This could trip up other software consuming these
disks. The goal of these patches is to get the VMDKs produced by QEMU to
better match the specification, the Virtual Disk Format 5.0 Technical
Note.

For instance, when packaging the VMDK up in an OVA archive (a ustar
archive containing an OVF, a manifest and a VMDK), errors occur when
importing that OVA into VMWare Workstation. Specifically the digest in
the manifest does not match the digest of the VMDK, because Workstation
reads (and parses) the disk contents and then makes a digest, rather
than making a digest of the whole VMDK file. Extra null bytes at the
very end will trip it up, as they are ignored in the digest made by
Workstation, but are included in the digest produced by something like
shasum.

Note that stream optimized disks, while not adhering to the
specification fully, are still useable by VMWare tooling, with some
workarounds where needed. For instance, VSphere does not have the same
issue as Workstation.

Signed-off-by: Sanne Raymaekers <sraymaek@redhat.com>

Sanne Raymaekers (3):
  block/vmdk: align stream optimized data grains on 512 byte chunks
  block/vmdk: skip RGD for stream optimized disks
  block/vmdk: add eos marker for stream optimized disks

 block/vmdk.c | 117 ++++++++++++++++++++++++++++++---------------------
 1 file changed, 70 insertions(+), 47 deletions(-)

-- 
2.55.0