[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v5 COLOPre 08/18] tools/libxl: introduce libxl__domain_restore_device_model to load qemu state
On 01/26/2016 02:41 AM, Konrad Rzeszutek Wilk wrote: > On Thu, Dec 17, 2015 at 03:48:12PM +0800, Wen Congyang wrote: >> From: Yang Hongyang <hongyang.yang@xxxxxxxxxxxx> >> >> In normal migration, the qemu state was passed to qemu as a parameter. > > /was/is/ > >> With COLO, Secondary vm is running. So we will do the following steps >> at every checkpoint: >> 1. suspend both primary vm and secondary vm >> 2. sync the state >> 3. resume both primary vm and secondary vm >> Primary will send qemu's state in step2, and >> Secondary's qemu should read it and restore the state before it > > s/Secondary/secondary/ >> is resumed. We can not pass the state to qemu as a parameter because >> Secondary QEMU already started at this point, so we introduce > > s/Secondary/secondary/ >> libxl__domain_restore_device_model() to do it. >> This API should be called before resuming secondary vm. > > s/before/MUST/ s/should/MUST/? Thanks Wen Congyang > >> >> Signed-off-by: Yang Hongyang <hongyang.yang@xxxxxxxxxxxx> >> Signed-off-by: Wen Congyang <wency@xxxxxxxxxxxxxx> >> Cc: Anthony Perard <anthony.perard@xxxxxxxxxx> >> --- >> tools/libxl/libxl_dom_save.c | 20 ++++++++++++++++++++ >> tools/libxl/libxl_internal.h | 4 ++++ >> tools/libxl/libxl_qmp.c | 10 ++++++++++ >> 3 files changed, 34 insertions(+) >> >> diff --git a/tools/libxl/libxl_dom_save.c b/tools/libxl/libxl_dom_save.c >> index 0bfa5fc..88cb1b3 100644 >> --- a/tools/libxl/libxl_dom_save.c >> +++ b/tools/libxl/libxl_dom_save.c >> @@ -609,6 +609,26 @@ int >> libxl__restore_emulator_xenstore_data(libxl__domain_create_state *dcs, >> return rc; >> } >> >> +int libxl__domain_restore_device_model(libxl__gc *gc, uint32_t domid, >> + const char *restore_file) >> +{ >> + int rc; >> + >> + switch (libxl__device_model_version_running(gc, domid)) { >> + case LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN_TRADITIONAL: >> + /* not supported now */ > > Perhaps: Will never be supported. > >> + rc = ERROR_INVAL; >> + break; >> + case LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN: >> + rc = libxl__qmp_restore(gc, domid, restore_file); >> + break; >> + default: >> + rc = ERROR_INVAL; >> + } >> + >> + return rc; >> +} >> + > > > . > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |