qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] qemu-iotests 042: zero size image on VMDK


From: Fam Zheng
Subject: Re: [Qemu-devel] qemu-iotests 042: zero size image on VMDK
Date: Thu, 18 Apr 2013 18:08:46 +0800
User-agent: Mutt/1.5.21 (2010-09-15)

On Thu, 04/18 09:39, Stefan Hajnoczi wrote:
> On Thu, Apr 18, 2013 at 03:08:55PM +0800, Fam Zheng wrote:
> > Currently VMDK block driver fails qemu-iotest case 042 because it
> > refuses to create block with zero size (silently). Is support for zero
> > size image desired or should this case be skipped?
> > 
> >     $ qemu-img create -f vmdk t.vmdk 0
> >     Formatting 't.vmdk', fmt=vmdk size=0 compat6=off 
> >     qemu-img: t.vmdk: error while creating vmdk: No such file or directory
> 
> Is there a reason to refuse 0-sized images?  The VMware tools can resize
> images so it would be possible to grow them later (i.e. the use case is
> weird but might still be valid).
> 
> It's also worth checking if VMware tools allow you to create 0-sized
> image and whether they can operate on them.  If they fail to open or
> inspect 0-sized images, then QEMU should not create them.

Not possible for VMware tools, either. See the vmware-vdiskmanager behavior 
here:

    $ ../vmdk.py t.vmdk resize 0
    OK

    $ ../vmdk.py t.vmdk show
    *** Header ***
                        magic : 1447904331
                      version : 1
                        flags : 3
                     capacity : 0
                   grain_size : 128
            descriptor_offset : 1
              descriptor_size : 20
              num_gtes_per_gt : 512
                   rgd_offset : 21
                    gd_offset : 278
                     overhead : 640
             unclean_shutdown : False
          single_endline_char : 

             non_endline_char :  
          double_endline_char : 
         double_endline_char2 : 

           compress_algorithm : 0
    *** Embeddd Descriptor ***
    # Disk DescriptorFile
    version=1
    encoding="UTF-8"
    CID=fffffffe
    parentCID=ffffffff
    isNativeSnapshot="no"
    createType="monolithicSparse"

    # Extent description
    RW 0 SPARSE "t.vmdk"

    # The Disk Data Base 
    #DDB

    ddb.deletable = "true"
    ddb.virtualHWVersion = "6"
    ddb.longContentID = "ff7abf4bda4302142e8ba8593ad0bdb6"
    ddb.uuid = "60 00 C2 94 2e a6 38 d0-8b 2c 21 37 49 8b 15 70"
    ddb.geometry.cylinders = "2048"
    ddb.geometry.heads = "64"
    ddb.geometry.sectors = "32"
    ddb.adapterType = "lsilogic"

    $ vmware-vdiskmanager -x 2G t.vmdk 
=>  Failed to open the disk 't.vmdk' : The file specified is not a virtual disk 
(0xf00003ebf).
    Failed to open disk 't.vmdk' : The file specified is not a virtual disk 
(0xf00003ebf).

=>  $ ../vmdk.py t.vmdk resize 1
    OK

    $ vmware-vdiskmanager -x 2G t.vmdk 
=>    Grow: 0% done.Disk expansion completed successfully.

    WARNING: If the virtual disk is partitioned, you must use a third-party
             utility in the virtual machine to expand the size of the
             partitions. For more information, see:
             http://www.vmware.com/support/kb/enduser/std_adp.php?p_faqid=1647


-- 
Fam



reply via email to

[Prev in Thread] Current Thread [Next in Thread]