[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC]VM live snapshot proposal
From: |
Huangpeng (Peter) |
Subject: |
[Qemu-devel] [RFC]VM live snapshot proposal |
Date: |
Mon, 3 Mar 2014 01:13:41 +0000 |
Hi, All
I found some discussion about VM live-snapshot, but haven't seen any progress.
https://lists.gnu.org/archive/html/qemu-devel/2013-08/msg02125.html
http://markmail.org/thread/shneezha7kmtosvb#query:+page:1+mid:shneezha7kmtosvb+state:results
Here I have another proposal, based on the live-migration scheme, add
consistent
memory state tracking and saving.
The idea is simple:
1.First round use live-migration to save all memory to a snapshot file.
2.intercept the action of memory-modify, save old pages to a temporary file and
mark dirty-bits,
3.Merge temporary file to the original snapshot file
Detailed process:
(1)Pause VM
(2) Save the device status to a temporary file (live-migration already
supported )
(3) Make disk snapshot
(4) Enable page dirty log and old dirty pages save function(which we need to
add)
(5) Resume VM
(6) Begin the first round of iteration, we save the entire contents of the VM
memory pages
to the snapshot file
(7) In the second round of iteration , we save the old page to the snapshot file
(8) Merge data of device status which is pre-saved in temporary files to the
snapshot file
(8) End ram snapshot and some cleanup work
Due to memory-modifications may happen in kvm, qemu, or vhost, the key-part is
how we
can provide common page-modify-tracking-and-saving api, we completed a
prototype by
simply add modified-page tracking/saving function in qemu, and it seems worked
fine.
Is this program acceptable? or are there any other better suggestions?
Thanks
Peter Huang
- [Qemu-devel] [RFC]VM live snapshot proposal,
Huangpeng (Peter) <=
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Stefan Hajnoczi, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Kevin Wolf, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Paolo Bonzini, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Kevin Wolf, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Paolo Bonzini, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Kevin Wolf, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Dr. David Alan Gilbert, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Andrea Arcangeli, 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Huangpeng (Peter), 2014/03/03
- Re: [Qemu-devel] [RFC]VM live snapshot proposal, Andrea Arcangeli, 2014/03/05