qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Kevin Wolf <kwolf@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Benjamin Cleyet-Marrel <bcm@accelance.fr>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Qemu savevm and CPU soft lockup
Date: Fri, 25 Sep 2009 09:40:00 +0200	[thread overview]
Message-ID: <4ABC73D0.6050301@redhat.com> (raw)
In-Reply-To: <4ABB9C57.60107@codemonkey.ws>

Am 24.09.2009 18:20, schrieb Anthony Liguori:
> Kevin Wolf wrote:
>> Am 24.09.2009 00:28, schrieb Anthony Liguori:
>>   
>>> Jamie Lokier wrote:
>>>     
>>>> This is normal savevm behaviour, and it is exactly the reason why
>>>> migrate-to-file is useful.  I would not be surprised if savevm is
>>>> changed to use migrate-to-file internally at some point, but it does
>>>> not look like happening soon.
>>>>   
>>>>       
>>> It's the same infrastructure.  The reason savevm isn't live is that 
>>> savevm stores it's data in a qcow2 file.  Right now the way qcow2 is 
>>> structured, the snapshot has to be a fixed size and allocated at once.  
>>> In order to make savevm live, we need a method to stream savevm data to 
>>> a qcow2 file while still allowing other IO operations to that qcow2 file.
>>>
>>> I'm fairly sure this will require a change to the qcow2 format in order 
>>> to support this.
>>>     
>>
>> Hm, snapshots are nothing complicated from qcow2 perspective. Why do you
>> think data needs to be fixed size?
> 
> What happens if you're in the middle of writing snapshot data and 
> another cluster has to be allocated?  You'll need a way to store the 
> snapshot data discontinuously.

Well, mapping virtually continuous data to discontinuous areas in the
image file is just how qcow2 works, right?

If you look at qcow_vmstate_load/save(offset), this is basically just a
call to bdrv_pread/pwrite(virtual_disk_size + offset). So for snapshots
it works exactly the same way as with regular data (which usually isn't
preallocated in qcow2 images).

Kevin

  reply	other threads:[~2009-09-25  7:41 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-18  9:56 [Qemu-devel] Qemu savevm and CPU soft lockup Benjamin Cleyet-Marrel
2009-09-23 16:05 ` Benjamin Cleyet-Marrel
2009-09-23 18:19   ` Jamie Lokier
2009-09-23 18:52     ` Ben Accelance
2009-09-23 22:21       ` Nathan Baum
2009-09-30  8:53         ` Benjamin Cleyet-Marrel
2009-09-23 22:28     ` Anthony Liguori
2009-09-24 13:19       ` Kevin Wolf
2009-09-24 16:20         ` Anthony Liguori
2009-09-25  7:40           ` Kevin Wolf [this message]
2009-09-25 11:31             ` Ben Accelance

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4ABC73D0.6050301@redhat.com \
    --to=kwolf@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=bcm@accelance.fr \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).