xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH v13 03/26] tools/libxl: Add back channel to allow migration target send data back
@ 2016-04-04 16:58 Ian.Jackson
  0 siblings, 0 replies; 5+ messages in thread
From: Ian.Jackson @ 2016-04-04 16:58 UTC (permalink / raw)
  To: Olaf Hering
  Cc: Lars Kurth, Li Zhijian, Changlong Xie, Wei Liu, Ian Campbell,
	Wen Congyang, Andrew Cooper, Jiang Yunhong, Dong Eddie,
	xen devel, Anthony Perard, Jim Fehlig, Gui Jianfeng,
	Shriram Rajagopalan, Yang Hongyang

Olaf Hering writes ("Re: [Xen-devel] [PATCH v13 03/26] tools/libxl: Add back channel to allow migration target send data back"):
> On Mon, Apr 04, Wei Liu wrote:
> > The fix is to patch libvirt. Looking at libvirt code I think I need to
> > patch Makefile.in to pass in an explicit LIBXL_API_VERSION number.
> 
> That might be true.
> 
> But shouldnt at the same time libxl.h get a change to recognize
> 0x040700? Perhaps this will be part of the release management.

It is on the release checklist.  But perhaps we should do it now.
Patch welcome :-).

Thanks,
Ian.

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

^ permalink raw reply	[flat|nested] 5+ messages in thread
* [PATCH v13 00/26] COarse-grain LOck-stepping Virtual Machines for Non-stop Service
@ 2016-03-25  6:44 Changlong Xie
  2016-03-25  6:44 ` [PATCH v13 03/26] tools/libxl: Add back channel to allow migration target send data back Changlong Xie
  0 siblings, 1 reply; 5+ messages in thread
From: Changlong Xie @ 2016-03-25  6:44 UTC (permalink / raw)
  To: xen devel, Konrad Rzeszutek Wilk, Andrew Cooper, Ian Campbell,
	Ian Jackson, Wei Liu
  Cc: Lars Kurth, Changlong Xie, Wen Congyang, Li Zhijian,
	Gui Jianfeng, Jiang Yunhong, Dong Eddie, Anthony Perard,
	Shriram Rajagopalan, Yang Hongyang

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

You can get the codes from here:
https://github.com/Pating/xen/tree/changlox/colo_v13

Changlog from v12 to v13
1. Rebase to the upstream xen
2. Address commnets from Ian and Liu Wei.
p7, Add A-B
p8, Add A-B
p10, Add A-B
p11, Add A-B
p12, Add LOG(ERROR, ) 
p13, Add A-B
p14, Remove libxl__ao_complete(xxx)
p15, Add A-B
p16, Add A-B
p17, Add A-B, replace "-c" with "--colo" for migrate-receive()
p19, Add A-B, introduce "switch ... case ..." 
p21, Add A-B
p22, Add A-B
p23, replace "forwarddev" with "coloft_fowarddev" 
p24, Add A-B
p25, Add A-B
p26, replace "--script" with "--coloft-script" 

Changlog from v11 to v12
1. Rebase to the upstream xen
2. Address commnets from Ian, Liu Wei and Konard.
Removed old p12,p13; introduce a new p13 what is splited out from old p15, introduce
a new p19 what is splited out from old p20.
p1, add A-B, and will update commit message when "xen-load-devices-state" relevant
patch merged on qemu side
p3, update comments, add assert() in libxl_domain_create_restore() 
p4, rename "dup_fd_helper" as "dup_cloexec", add missed newline
p5, add A-B
p7, remove repeated commit message, update the specification of libxl 
p8, update the specification of libxc 
p9, add A-B
p10, update commit message, fix blank line issue
p12, merged by old p12,p13(restore_callbacks wait_checkpoit/postcopy/suspend), fix blank
line issues, update comments about why COLO only supports HVM 
p13, move stream read manipulations to right place in libxl_internal.h  
p14, merged by old p12(save_callbacks wait_checkpoint), fix blank line issues, update Copyright(C)
p16, add "colo_" prefix for merge_secondary_dirty_bitmap()
p17, update COLO description part on man page
p18, fix long line issue
p19, just introduce colo mode and refactor relevant functions
p20, fix repetitive code in libxl__device_disk_from_xs_be(), make colo_port as int,  
remove unnecessary comments in libxl__build_device_model_args_new(), simplify 
disk_try_backend() and move the main part to in colo_qdisk_setup() in p21 
p21, fix blank line issue, update Copyright(C)
p22, merged by old p22,p23, update Copyright(C), add commets for NETLINK_COLO, remove unnecessary
'{ }', update url in commit message 
p23, fix blank line issue, add some comments for "forwarddev", update Copyright(C)
p24, introduce COLO_PROXY_CHECKPOINT_TIMEOUT, ASYNC_CALL 
p26, move colo_proxy_script setup codes to libxl__colo_restore_setup(), introduce long options
for main_migrate_receive() 

Changlog from v10 to v11
1. Rebased to then upstream xen
2. Address comments from Liu Wei 
p1, update commit message and remove libxl__domain_restore_device_model
p4, add A-B
p5, update commit message
p6, add A-B
p7,p8 add email address and direction info
p10, merged by old p10,p11 and update comments
p11, merged by old p12,p13 and update comments
p14,p15 move colo structures and functions into libxl_colo.h, and list callbacks
in order, also update commit message
p16, merged by old p18,p19,p20 and remove TODOs
p17, use original code for checking postcopy return value
p18, simplify *if* logic, fix wrong comments, and unset dom_info.quiet in COLO 
p19, add A-B 
p20, fix code style, update comments and man page 
p21,p22,p23,p24 move colo structures and functions into libxl_colo.h 

Changlog from v9 to v10
1. Rebased to the upstream xen
2. Fix one bug found in the test
3. Merge some patches from prepare series
4. Split patch 5 to two patches(patch 4 and 5) according to the comments from
   Wei Liu

Changlog from v8 to v9:
1. Rebased to the upstream xen
2. Fix some bugs found in the test

Changelog from v7 to v8:
1. Rebased to the latest libxl migration v2.

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

Changlong Xie (2):
  libxl_internal: move stream read manipulations to right place
  Introduce COLO mode and refactor relevant function

Wen Congyang (24):
  tools/libxl: introduction of libxl__qmp_restore to load qemu state
  tools/libxl: introduce libxl__domain_common_switch_qemu_logdirty()
  tools/libxl: Add back channel to allow migration target send data back
  tools/libxl: Introduce new helper function dup_fd_helper()
  tools/libx{l,c}: add back channel to libxc
  docs: add colo readme
  docs/libxl: Introduce CHECKPOINT_CONTEXT to support migration v2 colo
    streams
  libxc/migration: Specification update for DIRTY_PFN_LIST records
  libxc/migration: export read_record for common use
  tools/libxl: add back channel support to write stream
  tools/libxl: add back channel support to read stream
  secondary vm suspend/resume/checkpoint code
  primary vm suspend/resume/checkpoint code
  libxc/restore: support COLO restore
  libxc/save: support COLO save
  implement the cmdline for COLO
  COLO: introduce new API to prepare/start/do/get_error/stop replication
  Support colo mode for qemu disk
  COLO: use qemu block replication
  COLO proxy: implement setup/teardown/preresume/postresume/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                        |   48 +-
 docs/misc/xl-disk-configuration.txt      |   53 ++
 docs/specs/libxc-migration-stream.pandoc |   27 +-
 docs/specs/libxl-migration-stream.pandoc |   59 +-
 tools/hotplug/Linux/Makefile             |    1 +
 tools/hotplug/Linux/colo-proxy-setup     |  135 ++++
 tools/libxc/include/xenguest.h           |   41 +-
 tools/libxc/xc_nomigrate.c               |    4 +-
 tools/libxc/xc_sr_common.c               |   80 ++-
 tools/libxc/xc_sr_common.h               |   24 +-
 tools/libxc/xc_sr_restore.c              |  246 +++++--
 tools/libxc/xc_sr_save.c                 |  100 ++-
 tools/libxc/xc_sr_stream_format.h        |   31 +-
 tools/libxl/Makefile                     |    4 +
 tools/libxl/libxl.c                      |   87 ++-
 tools/libxl/libxl.h                      |   29 +-
 tools/libxl/libxl_colo.h                 |  143 ++++
 tools/libxl/libxl_colo_nic.c             |  320 +++++++++
 tools/libxl/libxl_colo_proxy.c           |  277 ++++++++
 tools/libxl/libxl_colo_qdisk.c           |  230 +++++++
 tools/libxl/libxl_colo_restore.c         | 1087 ++++++++++++++++++++++++++++++
 tools/libxl/libxl_colo_save.c            |  696 +++++++++++++++++++
 tools/libxl/libxl_create.c               |   90 ++-
 tools/libxl/libxl_device.c               |   11 +
 tools/libxl/libxl_dm.c                   |  176 ++++-
 tools/libxl/libxl_dom_save.c             |  103 +--
 tools/libxl/libxl_internal.h             |  216 ++++--
 tools/libxl/libxl_qmp.c                  |  106 +++
 tools/libxl/libxl_remus_disk_drbd.c      |   38 +-
 tools/libxl/libxl_save_callout.c         |   53 +-
 tools/libxl/libxl_save_helper.c          |    8 +-
 tools/libxl/libxl_save_msgs_gen.pl       |   13 +-
 tools/libxl/libxl_sr_stream_format.h     |   11 +
 tools/libxl/libxl_stream_read.c          |  106 ++-
 tools/libxl/libxl_stream_write.c         |  100 ++-
 tools/libxl/libxl_types.idl              |   11 +
 tools/libxl/libxlu_disk_l.l              |   17 +
 tools/libxl/xl.c                         |    3 +
 tools/libxl/xl.h                         |    1 +
 tools/libxl/xl_cmdimpl.c                 |  109 ++-
 tools/libxl/xl_cmdtable.c                |    4 +-
 tools/ocaml/libs/xl/xenlight_stubs.c     |    2 +-
 tools/python/xen/migration/libxc.py      |   68 +-
 tools/python/xen/migration/libxl.py      |    9 +
 46 files changed, 4618 insertions(+), 374 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.3




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

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

end of thread, other threads:[~2016-04-04 16:58 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-04 16:58 [PATCH v13 03/26] tools/libxl: Add back channel to allow migration target send data back Ian.Jackson
  -- strict thread matches above, loose matches on Subject: below --
2016-03-25  6:44 [PATCH v13 00/26] COarse-grain LOck-stepping Virtual Machines for Non-stop Service Changlong Xie
2016-03-25  6:44 ` [PATCH v13 03/26] tools/libxl: Add back channel to allow migration target send data back Changlong Xie
2016-04-04 12:07   ` Olaf Hering
2016-04-04 13:02     ` Wei Liu
2016-04-04 15:29       ` Olaf Hering

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).