From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40331) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bZtb6-0008Ci-It for qemu-devel@nongnu.org; Wed, 17 Aug 2016 01:41:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bZtb1-00021p-Eb for qemu-devel@nongnu.org; Wed, 17 Aug 2016 01:41:03 -0400 Received: from [59.151.112.132] (port=4213 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bZtb0-00020Z-36 for qemu-devel@nongnu.org; Wed, 17 Aug 2016 01:40:59 -0400 Message-ID: <57B3FA42.2080002@cn.fujitsu.com> Date: Wed, 17 Aug 2016 13:46:42 +0800 From: Changlong Xie MIME-Version: 1.0 References: <1470227172-13704-1-git-send-email-zhang.zhanghailiang@huawei.com> In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH COLO-Frame v18 00/34] COarse-grain LOck-stepping(COLO) Virtual Machines for Non-stop Service (FT) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Zhi Yong Wu , zhanghailiang Cc: lizhijian@cn.fujitsu.com, quintela@redhat.com, peter.huangpeng@huawei.com, dgilbert@redhat.com, Stefan Hajnoczi , amit.shah@redhat.com, zhangchen.fnst@cn.fujitsu.com, qemu devel On 08/17/2016 12:05 PM, Zhi Yong Wu wrote: > HI > > Can you update http://wiki.qemu.org/Features/COLO and > block-replication.txt? Recently i had a try, but failed. By the way, I will update both of them later. > QEMU was built based on > https://github.com/coloft/qemu/commits/colo-v3.1-periodic-mode. > BTW, you should send email to QEMU community directly, but not personal email next time. Thanks -Xie > > Regards, > > Zhi Yong Wu > > On Wed, Aug 3, 2016 at 8:25 PM, zhanghailiang > wrote: >> This is the 18th version of COLO FT feature. >> >> It is based on '[PATCH v24 00/12] Block replication for continuous checkpoints' series. >> The complete codes can be found from the link: >> https://github.com/coloft/qemu/commits/colo-v3.1-periodic-mode >> >> For block part, Stefan promised to merge it. >> So we would like to update this series to the latest upstream. >> >> For this series, only patch 32 ~ 34 are not reviewed, so >> please help review them. Thanks. >> >> Cc: Stefan Hajnoczi >> Cc: Jason Wang >> >> TODO: >> 1. Checkpoint based on proxy in qemu >> 2. The capability of continuous FT >> 3. Optimize the VM's downtime during checkpoint >> >> zhanghailiang (34): >> configure: Add parameter for configure to enable/disable COLO support >> migration: Introduce capability 'x-colo' to migration >> COLO: migrate colo related info to secondary node >> migration: Integrate COLO checkpoint process into migration >> migration: Integrate COLO checkpoint process into loadvm >> COLO/migration: Create a new communication path from destination to >> source >> COLO: Implement COLO checkpoint protocol >> COLO: Add a new RunState RUN_STATE_COLO >> COLO: Save PVM state to secondary side when do checkpoint >> COLO: Load PVM's dirty pages into SVM's RAM cache temporarily >> ram/COLO: Record the dirty pages that SVM received >> COLO: Load VMState into buffer before restore it >> COLO: Flush PVM's cached RAM into SVM's memory >> COLO: Add checkpoint-delay parameter for migrate-set-parameters >> COLO: Synchronize PVM's state to SVM periodically >> COLO failover: Introduce a new command to trigger a failover >> COLO failover: Introduce state to record failover process >> COLO: Implement failover work for Primary VM >> COLO: Implement failover work for Secondary VM >> qmp event: Add COLO_EXIT event to notify users while exited from COLO >> COLO failover: Shutdown related socket fd when do failover >> COLO failover: Don't do failover during loading VM's state >> COLO: Process shutdown command for VM in COLO state >> COLO: Update the global runstate after going into colo state >> savevm: Introduce two helper functions for save/find loadvm_handlers >> entry >> migration/savevm: Add new helpers to process the different stages of >> loadvm >> migration/savevm: Export two helper functions for savevm process >> COLO: Separate the process of saving/loading ram and device state >> COLO: Split qemu_savevm_state_begin out of checkpoint process >> filter-buffer: Accept zero interval >> net: Add notifier/callback for netdev init >> COLO/filter: Add each netdev a buffer filter >> COLO: Control the status of buffer filters for PVM >> COLO: Add block replication into colo process >> >> configure | 11 + >> docs/qmp-events.txt | 16 + >> hmp-commands.hx | 15 + >> hmp.c | 15 + >> hmp.h | 1 + >> include/exec/ram_addr.h | 1 + >> include/migration/colo.h | 43 +++ >> include/migration/failover.h | 33 ++ >> include/migration/migration.h | 16 + >> include/net/filter.h | 2 + >> include/net/net.h | 3 + >> include/sysemu/sysemu.h | 9 + >> migration/Makefile.objs | 2 + >> migration/colo-comm.c | 79 ++++ >> migration/colo-failover.c | 84 +++++ >> migration/colo.c | 844 ++++++++++++++++++++++++++++++++++++++++++ >> migration/migration.c | 84 ++++- >> migration/ram.c | 175 ++++++++- >> migration/savevm.c | 113 ++++-- >> migration/trace-events | 8 + >> net/filter-buffer.c | 12 - >> net/net.c | 12 + >> qapi-schema.json | 102 ++++- >> qapi/event.json | 15 + >> qmp-commands.hx | 24 +- >> stubs/Makefile.objs | 1 + >> stubs/migration-colo.c | 55 +++ >> vl.c | 30 +- >> 28 files changed, 1744 insertions(+), 61 deletions(-) >> create mode 100644 include/migration/colo.h >> create mode 100644 include/migration/failover.h >> create mode 100644 migration/colo-comm.c >> create mode 100644 migration/colo-failover.c >> create mode 100644 migration/colo.c >> create mode 100644 stubs/migration-colo.c >> >> -- >> 1.8.3.1 >> >> >> > > >