All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sanne Raymaekers <sraymaek@redhat.com>
To: qemu-devel@nongnu.org
Cc: qemu-block@nongnu.org, fam@euphon.net, kwolf@redhat.com,
	hreitz@redhat.com, Sanne Raymaekers <sraymaek@redhat.com>
Subject: [PATCH v3 0/3] block/vmdk: fixes for stream optimized disks
Date: Fri, 16 Oct 2026 14:37:47 +0200	[thread overview]
Message-ID: <20261016123750.94769-1-sraymaek@redhat.com> (raw)

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.

V3 cleans up some formatting and makes the commit messages clearer.

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 | 121 ++++++++++++++++++++++++++++++++-------------------
 1 file changed, 76 insertions(+), 45 deletions(-)

-- 
2.55.0



             reply	other threads:[~2026-10-16 12:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-16 12:37 Sanne Raymaekers [this message]
2026-10-16 12:37 ` [PATCH v3 1/3] block/vmdk: align stream optimized data grains on 512 byte chunks Sanne Raymaekers
2026-10-16 12:37 ` [PATCH v3 2/3] block/vmdk: skip RGD for stream optimized disks Sanne Raymaekers
2026-10-16 12:37 ` [PATCH v3 3/3] block/vmdk: add eos marker " Sanne Raymaekers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261016123750.94769-1-sraymaek@redhat.com \
    --to=sraymaek@redhat.com \
    --cc=fam@euphon.net \
    --cc=hreitz@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.