From: Luiz Capitulino <lcapitulino@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: xen-devel@lists.xensource.com,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
jan.kiszka@siemens.com, qemu-devel@nongnu.org, avi@redhat.com,
anthony@codemonkey.ws
Subject: Re: [Qemu-devel] [PATCH v7 2/6] Introduce "save-devices-state"
Date: Fri, 16 Mar 2012 14:28:27 -0300 [thread overview]
Message-ID: <20120316142827.03907931@doriath.home> (raw)
In-Reply-To: <4F636123.5010901@redhat.com>
On Fri, 16 Mar 2012 09:49:55 -0600
Eric Blake <eblake@redhat.com> wrote:
> On 03/16/2012 06:13 AM, Stefano Stabellini wrote:
> > - add an "is_ram" flag to SaveStateEntry;
> >
> > - register_savevm_live sets is_ram for live_savevm devices;
> >
> > - introduce a "save-devices-state" QAPI command that can be used to save
> > the state of all devices, but not the RAM or the block devices of the
> > VM.
> >
>
> > +QEMU has code to load/save the state of the guest that it is running.
> > +These are two complementary operations. Saving the state just does
> > +that, saves the state for each device that the guest is running.
> > +
> > +These operations are normally used with migration (see migration.txt),
> > +however it is also possible to save the state of all devices to file,
> > +without saving the RAM or the block devices of the VM.
> > +
> > +This operation is called "save-devices-state" (see QMP/qmp-commands.txt)
>
> Is there a complimentary load-devices-state?
>
> Just to make sure I'm clear, there are three things to save before you
> have a complete picture of a running VM:
>
> disk state (can be saved with 'savevm' to internal qcow2 snapshots, or
> with 'transaction' and 'blockdev-snapshot-sync' by creating external
> snapshots, or by 'migrate' to a file)
>
> RAM state (can be saved with 'savevm' to internal qcow2 snapshot, or
> with 'migrate' to a file; it is also possible to start qemu with a
> command line parameter telling which backing file tracks RAM state)
The maybe-to-be-added 'dump' command also saves RAM state, but to elf file
format.
>
> device state (can be saved with 'savevm' to internal qcow2 snapshot, or
> with 'migrate' to a file, and now with 'save-devices-state')
>
> That is, 'migrate' does all three at once to an external file, 'savevm'
> does all three at once to an internal qcow2 snapshot, and you are now
> making it possible to do any one of the three independently to an
> external file while the VM continues to run.
>
> Is this something that libvirt should be exposing in the near future?
>
> > +SQMP
> > +save-devices-state
> > +-------
> > +
> > +Save the state of all devices to file. The RAM and the block devices
> > +of the VM are not saved by this command.
> > +
> > +Arguments:
> > +
> > +- "filename": the file to save the state of the devices to as binary
> > +data. See save-devices-state.txt for a description of the binary format.
> > +
> > +Example:
> > +
> > +-> { "execute": "save-devices-state", "arguments": { "filename": "/tmp/save" } }
>
> Can we at least reserve something for future extension to add things
> like 'fd:name' to refer to a named fd received earlier via 'getfd'? You
> could do that by documenting up front that if "filename" does not start
> with "/", then any pattern of letters followed by a ':' as the initial
> pattern of the filename is an error (and you avoid the error by using
> ./foo:... or an absolute path).
>
next prev parent reply other threads:[~2012-03-16 20:08 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-16 12:11 [Qemu-devel] [PATCH v7 0/6] save/restore on Xen Stefano Stabellini
2012-03-16 12:13 ` [Qemu-devel] [PATCH v7 1/6] cirrus_vga: do not reset videoram Stefano Stabellini
2012-03-16 12:13 ` [Qemu-devel] [PATCH v7 2/6] Introduce "save-devices-state" Stefano Stabellini
2012-03-16 15:49 ` Eric Blake
2012-03-16 15:58 ` Anthony Liguori
2012-03-16 16:03 ` Eric Blake
2012-03-19 11:48 ` Stefano Stabellini
2012-03-16 16:13 ` Stefano Stabellini
2012-03-16 17:28 ` Luiz Capitulino [this message]
2012-03-16 12:13 ` [Qemu-devel] [PATCH v7 3/6] Set runstate to INMIGRATE earlier Stefano Stabellini
2012-03-16 12:13 ` [Qemu-devel] [PATCH v7 4/6] xen: record physmap changes to xenstore Stefano Stabellini
2012-03-16 12:13 ` [Qemu-devel] [PATCH v7 5/6] xen mapcache: check if memory region has moved Stefano Stabellini
2012-03-16 12:13 ` [Qemu-devel] [PATCH v7 6/6] xen: do not allocate RAM during INMIGRATE runstate Stefano Stabellini
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=20120316142827.03907931@doriath.home \
--to=lcapitulino@redhat.com \
--cc=anthony@codemonkey.ws \
--cc=avi@redhat.com \
--cc=eblake@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=qemu-devel@nongnu.org \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xensource.com \
/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).