[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v8 00/15] Migration v2 (libxc)



Presented here is v8 of the Migration v2 series (libxc subset), which is able
to function when transparently inserted under an unmodified xl/libxl.

There are numerous tweaks in v8 (fix build with MiniOS, tweak some code to
appease Coverity, style fixes, clarification of some error messages) but no
major changes from the previous version.  It is my belief that the libxc
changes are functionally complete.

This series can be found on a 'saverestore2-v8' at
  http://xenbits.xen.org/git-http/people/andrewcoop/xen.git

To experiment, simply set XG_MIGRATION_V2 in xl's environment.  For migration,
the easiest way is to tweak libxl-save-helper to be a shell script

  root@vitruvias:/home# cat /usr/lib/xen/bin/libxl-save-helper
  #!/bin/bash
  export XG_MIGRATION_V2=x
  exec /usr/lib/xen/bin/libxl-save-helper.bin "$@"

which will ensure that XG_MIGRATION_V2 gets set in the environment for both
the source and destination of migration.

  Patches 1 and 2 are prerequisites
  Patches 3 to 13 are the meat of the series
  Patch 14 is the design document
  Patch 15 is the compat layer for unmodified libxl

Please experiment!

~Andrew

Andrew Cooper (15):
  tools/libxc: Implement writev_exact() in the same style as write_exact()
  libxc/progress: Extend the progress interface
  tools/libxc: Migration v2 framework
  tools/libxc: C implementation of stream format
  tools/libxc: noarch common code
  tools/libxc: x86 common code
  tools/libxc: x86 PV common code
  tools/libxc: x86 PV save code
  tools/libxc: x86 PV restore code
  tools/libxc: x86 HVM save code
  tools/libxc: x86 HVM restore code
  tools/libxc: noarch save code
  tools/libxc: noarch restore code
  docs: libxc migration stream specification
  tools/libxc: Migration v2 compatibility for unmodified libxl

 docs/Makefile                            |   11 +-
 docs/specs/libxc-migration-stream.pandoc |  672 +++++++++++++++++
 tools/libxc/Makefile                     |    9 +
 tools/libxc/include/xenguest.h           |   13 +
 tools/libxc/xc_domain_restore.c          |   11 +-
 tools/libxc/xc_domain_save.c             |    9 +-
 tools/libxc/xc_private.c                 |  107 ++-
 tools/libxc/xc_private.h                 |   18 +-
 tools/libxc/xc_sr_common.c               |  113 +++
 tools/libxc/xc_sr_common.h               |  342 +++++++++
 tools/libxc/xc_sr_common_x86.c           |   54 ++
 tools/libxc/xc_sr_common_x86.h           |   26 +
 tools/libxc/xc_sr_common_x86_pv.c        |  210 ++++++
 tools/libxc/xc_sr_common_x86_pv.h        |  102 +++
 tools/libxc/xc_sr_restore.c              |  646 +++++++++++++++++
 tools/libxc/xc_sr_restore_x86_hvm.c      |  327 +++++++++
 tools/libxc/xc_sr_restore_x86_pv.c       | 1153 ++++++++++++++++++++++++++++++
 tools/libxc/xc_sr_save.c                 |  788 ++++++++++++++++++++
 tools/libxc/xc_sr_save_x86_hvm.c         |  256 +++++++
 tools/libxc/xc_sr_save_x86_pv.c          |  860 ++++++++++++++++++++++
 tools/libxc/xc_sr_stream_format.h        |  148 ++++
 tools/libxc/xtl_core.c                   |    9 +-
 22 files changed, 5867 insertions(+), 17 deletions(-)
 create mode 100644 docs/specs/libxc-migration-stream.pandoc
 create mode 100644 tools/libxc/xc_sr_common.c
 create mode 100644 tools/libxc/xc_sr_common.h
 create mode 100644 tools/libxc/xc_sr_common_x86.c
 create mode 100644 tools/libxc/xc_sr_common_x86.h
 create mode 100644 tools/libxc/xc_sr_common_x86_pv.c
 create mode 100644 tools/libxc/xc_sr_common_x86_pv.h
 create mode 100644 tools/libxc/xc_sr_restore.c
 create mode 100644 tools/libxc/xc_sr_restore_x86_hvm.c
 create mode 100644 tools/libxc/xc_sr_restore_x86_pv.c
 create mode 100644 tools/libxc/xc_sr_save.c
 create mode 100644 tools/libxc/xc_sr_save_x86_hvm.c
 create mode 100644 tools/libxc/xc_sr_save_x86_pv.c
 create mode 100644 tools/libxc/xc_sr_stream_format.h

-- 
1.7.10.4


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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.