This patchset implemented the COLO feature for Xen.
For detail/install/use of COLO feature, refer to:
  http://wiki.xen.org/wiki/COLO_-_Coarse_Grain_Lock_Stepping

This patchset is based on:
  [PATCH v3 COLOPre 00/26] Prerequisite patches for COLO
and on:
  
http://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen.git;a=shortlog;h=refs/heads/libxl-migv2-v1

Note that I did compile test only because Libxl migration v2 is in
experimental and Remus failover on Libxl migration v2 need to be fixed.

We only support hvm guest now. The codes are also hosted on github:
  https://github.com/macrosheep/xen/tree/colo-v7

Changelog from v6 to v7:
1. Ported to Libxl migration v2
2. Send dirty bitmap from secondary to primary on libxc side
3. Address review comments

Changelog from v5 to v6:
1. based on migration v2(libxc)
2. split the patchset into prerequisite patchset and this main patchset.

Changelog from v4 to v5:
1. rebase to the latest xen upstream
2. disk replication: blktap2->qdisk
3. nic replication: colo-agent->colo-proxy

Changelog from v3 to v4:
1. rebase to newest xen
2. bug fix

Changlog from v2 to v3:
1. rebase to newest remus
2. add nic replication support

Changlog from v1 to v2:
1. rebase to newest remus
2. add disk replication support


Wen Congyang (8):
  tools/libxl: handle colo_context records in a libxl migration v2
    stream
  tools/libxl: write colo_context records into the stream
  secondary vm suspend/resume/checkpoint code
  primary vm suspend/resume/checkpoint code
  send store mfn and console mfn to xl before resuming secondary vm
  implement the cmdline for COLO
  Support colo mode for qemu disk
  COLO: use qemu block replication

Yang Hongyang (10):
  docs: add colo readme
  libxc/restore: support COLO restore
  libxc/restore: send dirty bitmap to primary when checkpoint under colo
  libxc/save: support COLO save
  COLO proxy: implement setup/teardown of COLO proxy module
  COLO proxy: preresume, postresume and checkpoint
  COLO nic: implement COLO nic subkind
  setup and control colo proxy on primary side
  setup and control colo proxy on secondary side
  cmdline switches and config vars to control colo-proxy

 docs/README.colo                     |    9 +
 docs/man/xl.conf.pod.5               |    6 +
 docs/man/xl.pod.1                    |   11 +-
 docs/misc/xl-disk-configuration.txt  |   38 ++
 tools/hotplug/Linux/Makefile         |    1 +
 tools/hotplug/Linux/colo-proxy-setup |  131 +++++
 tools/libxc/include/xenguest.h       |    8 +
 tools/libxc/xc_sr_common.h           |   25 +-
 tools/libxc/xc_sr_restore.c          |  184 ++++++
 tools/libxc/xc_sr_save.c             |  104 +++-
 tools/libxl/Makefile                 |    4 +
 tools/libxl/libxl.c                  |   77 ++-
 tools/libxl/libxl_colo.h             |   42 ++
 tools/libxl/libxl_colo_nic.c         |  317 +++++++++++
 tools/libxl/libxl_colo_proxy.c       |  267 +++++++++
 tools/libxl/libxl_colo_qdisk.c       |  209 +++++++
 tools/libxl/libxl_colo_restore.c     | 1022 ++++++++++++++++++++++++++++++++++
 tools/libxl/libxl_colo_save.c        |  705 +++++++++++++++++++++++
 tools/libxl/libxl_create.c           |  152 ++++-
 tools/libxl/libxl_device.c           |   38 ++
 tools/libxl/libxl_dm.c               |  262 ++++++++-
 tools/libxl/libxl_dom_save.c         |   13 +-
 tools/libxl/libxl_internal.h         |  172 ++++--
 tools/libxl/libxl_qmp.c              |   31 ++
 tools/libxl/libxl_save_callout.c     |    7 +-
 tools/libxl/libxl_save_msgs_gen.pl   |    2 +-
 tools/libxl/libxl_stream_read.c      |   51 ++
 tools/libxl/libxl_stream_write.c     |   92 +++
 tools/libxl/libxl_types.idl          |    8 +
 tools/libxl/libxlu_disk_l.l          |    5 +
 tools/libxl/xl.c                     |    3 +
 tools/libxl/xl.h                     |    1 +
 tools/libxl/xl_cmdimpl.c             |  101 +++-
 tools/libxl/xl_cmdtable.c            |    4 +-
 34 files changed, 4007 insertions(+), 95 deletions(-)
 create mode 100644 docs/README.colo
 create mode 100755 tools/hotplug/Linux/colo-proxy-setup
 create mode 100644 tools/libxl/libxl_colo.h
 create mode 100644 tools/libxl/libxl_colo_nic.c
 create mode 100644 tools/libxl/libxl_colo_proxy.c
 create mode 100644 tools/libxl/libxl_colo_qdisk.c
 create mode 100644 tools/libxl/libxl_colo_restore.c
 create mode 100644 tools/libxl/libxl_colo_save.c

-- 
1.9.1


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to