]> git.proxmox.com Git - qemu.git/commit
vmdk: add support for “zeroed‐grain” GTE
authorFam Zheng <famz@redhat.com>
Thu, 2 May 2013 02:25:23 +0000 (10:25 +0800)
committerStefan Hajnoczi <stefanha@redhat.com>
Fri, 3 May 2013 08:33:38 +0000 (10:33 +0200)
commit14ead646fe7d5163c342ebd1e0aeb556ecf343a1
tree798266351f678a70ae6d83482ff3237d53406e90
parent65f7472577f9409d285b0216fae76c7c3f03fc41
vmdk: add support for “zeroed‐grain” GTE

Introduced support for zeroed-grain GTE, as specified in Virtual Disk
Format 5.0[1].

    Recent VMware hosted platform products support a new “zeroed‐grain”
    grain table entry (GTE). The zeroed‐grain GTE returns all zeros on
    read.  In other words, the zeroed‐grain GTE indicates that a grain
    in the child disk is zero‐filled but does not actually occupy space
    in storage.  A sparse extent with zeroed‐grain GTE has the following
    in its header:

     * SparseExtentHeader.version = 2
     * SparseExtentHeader.flags has bit 2 set

    Other than the new flag and the possibly zeroed‐grain GTE, version 2
    sparse extents are identical to version 1.  Also, a zeroed‐grain GTE
    has value 0x1 in the GT table.

[1] Virtual Disk Format 5.0, http://www.vmware.com/support/developer/vddk/vmdk_50_technote.pdf?src=vmdk
Signed-off-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
block/vmdk.c