Hi, This series tries to integrate colo frame with block replication and net compare. Block replcation and colo proxy (net compare) parts have been merged in upstream for last version. We need to integrate all of them to realize complete capability of COLO.
Besides, for colo frame, there are some optimizations, including separating the process of saving ram and device state, using an COLO_EXIT event to notify users that VM exits COLO, for these parts, most of them have been reviewed long time ago in old version. Please review, thanks. Cc: Dong eddie <eddie.d...@intel.com> Cc: Jiang yunhong <yunhong.ji...@intel.com> Cc: Xu Quan <xuqu...@huawei.com> Cc: Jason Wang <jasow...@redhat.com> zhanghailiang (15): net/colo: Add notifier/callback related helpers for filter colo-compare: implement the process of checkpoint colo-compare: use notifier to notify packets comparing result COLO: integrate colo compare with colo frame COLO: Handle shutdown command for VM in COLO state COLO: Add block replication into colo process COLO: Load PVM's dirty pages into SVM's RAM cache temporarily ram/COLO: Record the dirty pages that SVM received COLO: Flush PVM's cached RAM into SVM's memory qmp event: Add COLO_EXIT event to notify users while exited from COLO savevm: split save/find loadvm_handlers entry into two helper functions savevm: split the process of different stages for loadvm/savevm COLO: Separate the process of saving/loading ram and device state COLO: Split qemu_savevm_state_begin out of checkpoint process COLO: flush host dirty ram from cache include/exec/ram_addr.h | 1 + include/migration/colo.h | 1 + include/migration/migration.h | 5 + include/sysemu/sysemu.h | 9 ++ migration/colo.c | 232 +++++++++++++++++++++++++++++++++++++++--- migration/migration.c | 2 +- migration/ram.c | 149 ++++++++++++++++++++++++++- migration/savevm.c | 114 +++++++++++++++++---- migration/trace-events | 2 + net/colo-compare.c | 104 ++++++++++++++++++- net/colo-compare.h | 22 ++++ net/colo.c | 92 +++++++++++++++++ net/colo.h | 18 ++++ qapi-schema.json | 18 +++- qapi/event.json | 21 ++++ vl.c | 19 +++- 16 files changed, 764 insertions(+), 45 deletions(-) create mode 100644 net/colo-compare.h -- 1.8.3.1