All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH COLO-Frame v18 00/34] COarse-grain LOck-stepping(COLO) Virtual Machines for Non-stop Service (FT)
@ 2016-08-03 12:25 zhanghailiang
  2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 01/34] configure: Add parameter for configure to enable/disable COLO support zhanghailiang
                   ` (36 more replies)
  0 siblings, 37 replies; 48+ messages in thread
From: zhanghailiang @ 2016-08-03 12:25 UTC (permalink / raw)
  To: qemu-devel
  Cc: amit.shah, quintela, dgilbert, peter.huangpeng, eddie.dong,
	wency, lizhijian, zhangchen.fnst, xiecl.fnst, zhanghailiang,
	Stefan Hajnoczi, Jason Wang

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 <stefanha@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>

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

^ permalink raw reply	[flat|nested] 48+ messages in thread

end of thread, other threads:[~2016-09-01  8:04 UTC | newest]

Thread overview: 48+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-03 12:25 [Qemu-devel] [PATCH COLO-Frame v18 00/34] COarse-grain LOck-stepping(COLO) Virtual Machines for Non-stop Service (FT) zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 01/34] configure: Add parameter for configure to enable/disable COLO support zhanghailiang
2016-08-25 21:45   ` Amit Shah
2016-09-01  3:26     ` Hailiang Zhang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 02/34] migration: Introduce capability 'x-colo' to migration zhanghailiang
2016-08-25 21:47   ` Amit Shah
2016-09-01  3:27     ` Hailiang Zhang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 03/34] COLO: migrate colo related info to secondary node zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 04/34] migration: Integrate COLO checkpoint process into migration zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 05/34] migration: Integrate COLO checkpoint process into loadvm zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 06/34] COLO/migration: Create a new communication path from destination to source zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 07/34] COLO: Implement COLO checkpoint protocol zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 08/34] COLO: Add a new RunState RUN_STATE_COLO zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 09/34] COLO: Save PVM state to secondary side when do checkpoint zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 10/34] COLO: Load PVM's dirty pages into SVM's RAM cache temporarily zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 11/34] ram/COLO: Record the dirty pages that SVM received zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 12/34] COLO: Load VMState into buffer before restore it zhanghailiang
2016-08-05 17:53   ` Dr. David Alan Gilbert
2016-08-08  8:52     ` Daniel P. Berrange
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 13/34] COLO: Flush PVM's cached RAM into SVM's memory zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 14/34] COLO: Add checkpoint-delay parameter for migrate-set-parameters zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 15/34] COLO: Synchronize PVM's state to SVM periodically zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 16/34] COLO failover: Introduce a new command to trigger a failover zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 17/34] COLO failover: Introduce state to record failover process zhanghailiang
2016-08-09  9:17   ` Dr. David Alan Gilbert
2016-08-10  4:07     ` Hailiang Zhang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 18/34] COLO: Implement failover work for Primary VM zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 19/34] COLO: Implement failover work for Secondary VM zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 20/34] qmp event: Add COLO_EXIT event to notify users while exited from COLO zhanghailiang
2016-08-03 12:25 ` [Qemu-devel] [PATCH COLO-Frame v18 21/34] COLO failover: Shutdown related socket fd when do failover zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 22/34] COLO failover: Don't do failover during loading VM's state zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 23/34] COLO: Process shutdown command for VM in COLO state zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 24/34] COLO: Update the global runstate after going into colo state zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 25/34] savevm: Introduce two helper functions for save/find loadvm_handlers entry zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 26/34] migration/savevm: Add new helpers to process the different stages of loadvm zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 27/34] migration/savevm: Export two helper functions for savevm process zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 28/34] COLO: Separate the process of saving/loading ram and device state zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 29/34] COLO: Split qemu_savevm_state_begin out of checkpoint process zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 30/34] filter-buffer: Accept zero interval zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 31/34] net: Add notifier/callback for netdev init zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 32/34] COLO/filter: Add each netdev a buffer filter zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 33/34] COLO: Control the status of buffer filters for PVM zhanghailiang
2016-08-03 12:26 ` [Qemu-devel] [PATCH COLO-Frame v18 34/34] COLO: Add block replication into colo process zhanghailiang
2016-08-16  0:00 ` [Qemu-devel] [PATCH COLO-Frame v18 00/34] COarse-grain LOck-stepping(COLO) Virtual Machines for Non-stop Service (FT) Changlong Xie
2016-08-16 10:51   ` Hailiang Zhang
     [not found] ` <CAEH94Lju9VSjxo_32yX2iTJngapfDiKQrSXVHa6G6S05yCFWeg@mail.gmail.com>
2016-08-17  5:46   ` Changlong Xie
2016-08-25 21:52 ` Amit Shah
2016-09-01  8:03   ` Hailiang Zhang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.