qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 0/4] Initial VHDX support


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH v3 0/4] Initial VHDX support
Date: Thu, 2 May 2013 13:40:36 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

On Wed, May 01, 2013 at 11:06:16AM -0400, Jeff Cody wrote:
> On Wed, May 01, 2013 at 02:43:04PM +0200, Stefan Hajnoczi wrote:
> > On Mon, Apr 29, 2013 at 02:48:15PM -0400, Jeff Cody wrote:
> > > 
> > > Differences from v2:
> > > 
> > > 
> > > Patch 2/4:  changed 2 uint8_t[16] to MSGUID (Kevin)
> > >             renamed all strucs to proper style (Kevin)
> > >             indentations / style (Kevin)
> > >             Removed/fixed outdated comments (Stefan)
> > >             dropped vhdx_header_padded (Kevin)            
> > >             
> > > Patch 3/4:  removed hunk that was meant for old patch 5/5 (Fam)
> > >             check VHDX header version field (Fam)
> > >             validate file type id in open and not just probe (Kevin)
> > >             allow headers with seq # of 0 if other header is invalid 
> > > (Kevin)
> > >             fixed masking typo for parent meta present (Kevin)
> > >             removed error check for 512-byte sectors (Kevin)
> > >             verify region and metadata table guid are unique (Kevin)
> > >             removed signed/unsigned comparisons (Stefan)
> > >             sanity checking on rt.entry_count (Stefan)
> > >             use clz_() instead of inline code (Stefan)
> > >             bat_rt.length sanity check - compute it rather
> > >                than trust the entry length (Stefan)
> > > 
> > > Patch 5 (v2): Dropped
> > > 
> > > This adds the initial support for VHDX image files.  
> > > 
> > > It currently only supports read operations of VHDX, for fixed and dynamic 
> > > files.
> > > 
> > > Notably, the following is not yet supported:
> > >     * Differencing files
> > >     * Log replay (so we will refuse to open any images that are not 
> > > 'clean')
> > >     * .bdrv_create()
> > >     * write operations other than to the header
> > > 
> > > 
> > > Jeff Cody (4):
> > >   qemu: add castagnoli crc32c checksum algorithm
> > >   block: vhdx header for the QEMU support of VHDX images
> > >   block: initial VHDX driver support framework - supports open and probe
> > >   block: add read-only support to VHDX image format.
> > > 
> > >  block/Makefile.objs   |   1 +
> > >  block/vhdx.c          | 972 
> > > ++++++++++++++++++++++++++++++++++++++++++++++++++
> > >  block/vhdx.h          | 325 +++++++++++++++++
> > >  include/qemu/crc32c.h |  35 ++
> > >  util/Makefile.objs    |   1 +
> > >  util/crc32c.c         | 115 ++++++
> > >  6 files changed, 1449 insertions(+)
> > >  create mode 100644 block/vhdx.c
> > >  create mode 100644 block/vhdx.h
> > >  create mode 100644 include/qemu/crc32c.h
> > >  create mode 100644 util/crc32c.c
> > 
> > Do you have links to vhdx files I can test?
> >
> 
> I created a new VHDX file, because the ones I've been testing with
> have grown too large to share easily.  It is a 32GB dynamic image that
> contains a single EXT4 partition:
> 
> https://www.dropbox.com/s/52q84zy2n59ix6h/TestDisk32GBDynamic-ext4.vhdx.7z
> 
> I'll keep this link around for a while, but it will eventually go
> away.
> 
> Inside the ext4 partition there are 10 image files generated from
> /dev/urandom, and corresponding SHA1 hashes in a single SHA1SUM file,
> for verification.
> 
> Also, if you wish to check the SHA1SUM of the entire image from the
> view of the guest (e.g.  sha1sum /dev/vdb), the resulting hash should
> be:
> 
>   f897e5cadd3a0b1e776625caf79ed0eaf4baa3d8  /dev/vdb
> 
> (The above has was calculated from a Linux guest under Hyper-V 2012,
> and verified with these patches and QEMU).

Cool, thanks for making this available!

Stefan



reply via email to

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