]> git.proxmox.com Git - qemu.git/commitdiff
VMDK: enable twoGbMaxExtentFlat
authorFam Zheng <famcool@gmail.com>
Fri, 12 Aug 2011 15:19:27 +0000 (23:19 +0800)
committerKevin Wolf <kwolf@redhat.com>
Tue, 6 Sep 2011 10:20:43 +0000 (12:20 +0200)
Enable the createType 'twoGbMaxExtentFlat'. The supporting code is
already in.

Signed-off-by: Fam Zheng <famcool@gmail.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/vmdk.c

index 5f673e9e258bb45713c90418001f284cd79458a3..1e9e8d0534e36ee38e32fc781b302b32cc1cc2b4 100644 (file)
@@ -551,7 +551,8 @@ static int vmdk_open_desc_file(BlockDriverState *bs, int flags)
     if (vmdk_parse_description(buf, "createType", ct, sizeof(ct))) {
         return -EINVAL;
     }
-    if (strcmp(ct, "monolithicFlat")) {
+    if (strcmp(ct, "monolithicFlat") &&
+        strcmp(ct, "twoGbMaxExtentFlat")) {
         fprintf(stderr,
                 "VMDK: Not supported image type \"%s\""".\n", ct);
         return -ENOTSUP;
@@ -672,6 +673,7 @@ static int get_cluster_offset(BlockDriverState *bs,
         return 0;
     }
 
+    offset -= (extent->end_sector - extent->sectors) * SECTOR_SIZE;
     l1_index = (offset >> 9) / extent->l1_entry_sectors;
     if (l1_index >= extent->l1_size) {
         return -1;