mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 00:33:55 -06:00
COLO: Optimize memory back-up process
This patch will reduce the downtime of VM for the initial process, Previously, we copied all these memory in preparing stage of COLO while we need to stop VM, which is a time-consuming process. Here we optimize it by a trick, back-up every page while in migration process while COLO is enabled, though it affects the speed of the migration, but it obviously reduce the downtime of back-up all SVM'S memory in COLO preparing stage. Signed-off-by: zhanghailiang <zhang.zhanghailiang@huawei.com> Message-Id: <20200224065414.36524-5-zhang.zhanghailiang@huawei.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> minor typo fixes
This commit is contained in:
parent
dc14a47076
commit
0393031a16
3 changed files with 53 additions and 17 deletions
|
@ -26,6 +26,7 @@
|
|||
#include "qemu/main-loop.h"
|
||||
#include "qemu/rcu.h"
|
||||
#include "migration/failover.h"
|
||||
#include "migration/ram.h"
|
||||
#ifdef CONFIG_REPLICATION
|
||||
#include "replication.h"
|
||||
#endif
|
||||
|
@ -845,6 +846,8 @@ void *colo_process_incoming_thread(void *opaque)
|
|||
*/
|
||||
qemu_file_set_blocking(mis->from_src_file, true);
|
||||
|
||||
colo_incoming_start_dirty_log();
|
||||
|
||||
bioc = qio_channel_buffer_new(COLO_BUFFER_BASE_SIZE);
|
||||
fb = qemu_fopen_channel_input(QIO_CHANNEL(bioc));
|
||||
object_unref(OBJECT(bioc));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue