From 7777177c3c7291ff5c4b24040b075a1bd1c1db77 Mon Sep 17 00:00:00 2001 From: Fam Zheng Date: Mon, 15 Feb 2016 09:28:29 +0100 Subject: [PATCH 16/18] vmdk: Create streamOptimized as version 3 RH-Author: Fam Zheng Message-id: <1455528511-9357-17-git-send-email-famz@redhat.com> Patchwork-id: 69182 O-Subject: [RHEL-7.3 qemu-kvm PATCH 16/18] vmdk: Create streamOptimized as version 3 Bugzilla: 1299116 RH-Acked-by: Kevin Wolf RH-Acked-by: Max Reitz RH-Acked-by: Markus Armbruster BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1299116 VMware products accept only version 3 for streamOptimized, let's bump the version. Reported-by: Radoslav Gerganov Signed-off-by: Fam Zheng Signed-off-by: Kevin Wolf (cherry picked from commit d62d9dc4b814950dcc8bd261a3e2e9300d9065e6) Signed-off-by: Fam Zheng Signed-off-by: Miroslav Rezanina --- block/vmdk.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/block/vmdk.c b/block/vmdk.c index 7009660..7b3e397 100644 --- a/block/vmdk.c +++ b/block/vmdk.c @@ -1658,7 +1658,13 @@ static int vmdk_create_extent(const char *filename, int64_t filesize, } magic = cpu_to_be32(VMDK4_MAGIC); memset(&header, 0, sizeof(header)); - header.version = zeroed_grain ? 2 : 1; + if (compress) { + header.version = 3; + } else if (zeroed_grain) { + header.version = 2; + } else { + header.version = 1; + } header.flags = VMDK4_FLAG_RGD | VMDK4_FLAG_NL_DETECT | (compress ? VMDK4_FLAG_COMPRESS | VMDK4_FLAG_MARKER : 0) | (zeroed_grain ? VMDK4_FLAG_ZERO_GRAIN : 0); -- 1.8.3.1