On 13.03.2014 23:11, Jim Fehlig wrote:
V2 of
https://www.redhat.com/archives/libvir-list/2014-March/msg00156.html
New in this version: not much. I rebased on the hostdev passthrough
changes and added a few 'begin phase' checks to fail early if the
domain is not migratable. See 13/13 for details.
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.
Patch 13 contains the actual migration impl.
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 | 705 +++++++++++++++++++++++++++++++
src/libxl/libxl_domain.h | 51 ++-
src/libxl/libxl_driver.c | 988 +++++++++++---------------------------------
src/libxl/libxl_migration.c | 598 +++++++++++++++++++++++++++
src/libxl/libxl_migration.h | 78 ++++
9 files changed, 1716 insertions(+), 754 deletions(-)
create mode 100644 src/libxl/libxl_migration.c
create mode 100644 src/libxl/libxl_migration.h
ACK series. The first 12 patches are pure code movement (except for
11/13 which is trivial) and therefore can be pushed right now. However,
in the last one I have one question, well concern, so I'd suggest to not
push it straight away, but give others a few moments to disagree. And
push it after that. You know, it's inventing a new protocol which I fear
is not extensible (but do we need an extensibility there anyway?). From
code POV, it's clean though.
Michal