From: Yang Hongyang <yanghy@cn.fujitsu.com>
To: xen-devel@lists.xen.org
Cc: wei.liu2@citrix.com, ian.campbell@citrix.com,
wency@cn.fujitsu.com, andrew.cooper3@citrix.com,
yunhong.jiang@intel.com, eddie.dong@intel.com,
guijianfeng@cn.fujitsu.com, rshriram@cs.ubc.ca,
ian.jackson@eu.citrix.com
Subject: [PATCH v7 COLO 00/18] COarse-grain LOck-stepping Virtual Machines for Non-stop Service
Date: Thu, 25 Jun 2015 14:30:54 +0800 [thread overview]
Message-ID: <1435213872-10698-1-git-send-email-yanghy@cn.fujitsu.com> (raw)
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
next reply other threads:[~2015-06-25 6:30 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-25 6:30 Yang Hongyang [this message]
2015-06-25 6:30 ` [PATCH v7 COLO 01/18] docs: add colo readme Yang Hongyang
2015-07-14 15:15 ` Ian Campbell
2015-06-25 6:30 ` [PATCH v7 COLO 02/18] tools/libxl: handle colo_context records in a libxl migration v2 stream Yang Hongyang
2015-07-14 15:19 ` Ian Campbell
2015-07-15 0:34 ` Yang Hongyang
2015-06-25 6:30 ` [PATCH v7 COLO 03/18] tools/libxl: write colo_context records into the stream Yang Hongyang
2015-06-25 6:30 ` [PATCH v7 COLO 04/18] secondary vm suspend/resume/checkpoint code Yang Hongyang
2015-06-25 6:30 ` [PATCH v7 COLO 05/18] primary " Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 06/18] libxc/restore: support COLO restore Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 07/18] libxc/restore: send dirty bitmap to primary when checkpoint under colo Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 08/18] send store mfn and console mfn to xl before resuming secondary vm Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 09/18] libxc/save: support COLO save Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 10/18] implement the cmdline for COLO Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 11/18] Support colo mode for qemu disk Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 12/18] COLO: use qemu block replication Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 13/18] COLO proxy: implement setup/teardown of COLO proxy module Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 14/18] COLO proxy: preresume, postresume and checkpoint Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 15/18] COLO nic: implement COLO nic subkind Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 16/18] setup and control colo proxy on primary side Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 17/18] setup and control colo proxy on secondary side Yang Hongyang
2015-06-25 6:31 ` [PATCH v7 COLO 18/18] cmdline switches and config vars to control colo-proxy Yang Hongyang
2015-07-14 15:55 ` [PATCH v7 COLO 00/18] COarse-grain LOck-stepping Virtual Machines for Non-stop Service Ian Campbell
2015-07-15 0:41 ` Yang Hongyang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1435213872-10698-1-git-send-email-yanghy@cn.fujitsu.com \
--to=yanghy@cn.fujitsu.com \
--cc=andrew.cooper3@citrix.com \
--cc=eddie.dong@intel.com \
--cc=guijianfeng@cn.fujitsu.com \
--cc=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=rshriram@cs.ubc.ca \
--cc=wei.liu2@citrix.com \
--cc=wency@cn.fujitsu.com \
--cc=xen-devel@lists.xen.org \
--cc=yunhong.jiang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.