[libvirt] qemu and <transient/> disks

Daniel P. Berrange berrange at redhat.com
Mon Jul 23 09:48:47 UTC 2012


On Mon, Jul 23, 2012 at 10:41:55AM +0100, Richard W.M. Jones wrote:
> On Mon, Jul 23, 2012 at 10:28:57AM +0100, Daniel P. Berrange wrote:
> > I agree with the quoted text that libvirt should define a
> > directory to use for the transient disks under /var/lib/libvirt/images
> > perhaps, and just use 'qemu-img create' to create that, and the
> > unlink it once QEMU has started up, so we can auto-cleanup
> > on QEMU shutdown.
> 
> One issue here is that 'qemu-img create' is slow.  0.4 seconds to
> create a qcow2 file backing another file (ie. per readonly disk, and
> programs like virt-df may open dozens of readonly disks).
> 
> I looked at the strace output and it seems the slowness is just
> overhead from the machinery of qemu's coroutines, and not connected
> with writing the qcow2 file, which is presumably why the qemu
> snapshot=on option is not noticably slow.

Other options available could be

 - Enhance QEMU to allow a snapshot directory to be specified
 - Make libvirt actually create the empty QCow2 file. The QEMU
   people will probably say this is evil, but the knowledge
   required to a create an empty qcow2 file pointing to a backing
   file is pretty tiny.

Or we could even do both, using the former for new enough QEMU and
the latter only for older QEMU


Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list