Based on an earlier patch from Chunyan Liu
https://www.redhat.com/archives/libvir-list/2013-September/msg00667.html
This patch series adds basic migration support to the libxl driver.
Follow-up patches can improve pre-migration checks and add support for
additional migration flags.
Patches 1-12 are almost exclusively code motion, moving functions from
the main driver module into the libxl_domain and libxl_conf modules.
Patch13 is rather large and provides the migration implementation. If it
is preferred to split patch13 further, I'm open to suggestions on ways to
do that.
I've done some basic migration testing of this series using NFS shared
storage. Error handling only minimally tested though. I attempted a
migration to host with a different bridge than the source, verifying
the migration failed and the vm was resumed on the source.
Jim Fehlig (13):
libxl: move libxlDomainEventQueue to libxl_domain
libxl: move libxlDomainManagedSavePath to libxl_domain
libxl: move libxlSaveImageOpen to libxl_domain
libxl: move libxlVmCleanup{,Job} to libxl_domain
libxl: move libxlDomEventsRegister to libxl_domain
libxl: move libxlDomainAutoCoreDump to libxl_domain
libxl: move libxlDoNodeGetInfo to libxl_conf
libxl: move libxlDomainSetVcpuAffinities to libxl_domain
libxl: move libxlFreeMem to libxl_domain
libxl: move libxlVmStart to libxl_domain
libxl: include a pointer to the driver in libxlDomainObjPrivate
libxl: move domain event handler to libxl_domain
libxl: add migration support
po/POTFILES.in | 1 +
src/Makefile.am | 3 +-
src/libxl/libxl_conf.c | 36 ++
src/libxl/libxl_conf.h | 10 +
src/libxl/libxl_domain.c | 696 +++++++++++++++++++++++++++++++
src/libxl/libxl_domain.h | 51 ++-
src/libxl/libxl_driver.c | 972 +++++++++++---------------------------------
src/libxl/libxl_migration.c | 579 ++++++++++++++++++++++++++
src/libxl/libxl_migration.h | 78 ++++
9 files changed, 1681 insertions(+), 745 deletions(-)
create mode 100644 src/libxl/libxl_migration.c
create mode 100644 src/libxl/libxl_migration.h
--
1.8.1.4