aboutsummaryrefslogtreecommitdiff
path: root/block/vmdk.c
diff options
context:
space:
mode:
authorFam Zheng <famz@redhat.com>2015-09-17 13:04:10 +0800
committerKevin Wolf <kwolf@redhat.com>2016-01-20 13:36:24 +0100
commitd62d9dc4b814950dcc8bd261a3e2e9300d9065e6 (patch)
tree079514c672dceec72765f8ca1b1922f7867edc6e /block/vmdk.c
parent191fb11bdfbf53b33068268ce995a5c84045a8d9 (diff)
downloadqemu-d62d9dc4b814950dcc8bd261a3e2e9300d9065e6.zip
qemu-d62d9dc4b814950dcc8bd261a3e2e9300d9065e6.tar.gz
qemu-d62d9dc4b814950dcc8bd261a3e2e9300d9065e6.tar.bz2
vmdk: Create streamOptimized as version 3
VMware products accept only version 3 for streamOptimized, let's bump the version. Reported-by: Radoslav Gerganov <rgerganov@vmware.com> Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block/vmdk.c')
-rw-r--r--block/vmdk.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/block/vmdk.c b/block/vmdk.c
index 6b8596c..698679d 100644
--- a/block/vmdk.c
+++ b/block/vmdk.c
@@ -1663,7 +1663,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);