On Mon, 2016-01-04 at 15:31 +0000, Ian Jackson wrote: > [...] > The daemonic xl exits in this situation because it expects the > migration machinery to tidy up the domain. > > * It is not possible to resume the domain in the source after it has > suspended.
Isn't supposed to be, isn't that why SCHEDOP_suspend returns a flag to indicate if it was cancelled or not, so the guest can be resumed on the source if "something" went wrong? (And isn't such a resume the same as what happens after a checkpoint?) Unless you are referring not to the general case but to some more specific scenario/window where this is no longer possible? > The domain is, in the hypervisor, in the lifecycle state > SHUTDOWN. For this reason in general, it is a bad idea to suspend > the guest until the migration is known to be likely to succeed. > > After a late migration failure the domain should probably be treated > as crashed. This is slightly awkward to implement because the > daemonic xl would have to hang around to see what happened next and > perhaps be told what to do. Or maybe the migrating xl would have to > know what the on_crash configuration was. > > In the meantime the failure is rather less graceful: debris is > simply left for the user. This is not ideal but tolerable I think. > > Ian. > > > From 00c4fc6495078026d68f3fdd88bfd29a8ad483d7 Mon Sep 17 00:00:00 2001 > From: Ian Jackson <ian.jack...@eu.citrix.com> > Date: Mon, 4 Jan 2016 15:13:14 +0000 > Subject: [PATCH] libxl: Fix doc comment ref to DOMAIN_DEATH > > The doc comment for libxl_evdisable_domain_death mistakenly referred > to DOMAIN_DESTROY but the event type name is actually DOMAIN_DEATH. > > Signed-off-by: Ian Jackson <ian.jack...@eu.citrix.com> > CC: Andrew Cooper <andrew.coop...@citrix.com> > --- > tools/libxl/libxl_event.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/libxl/libxl_event.h b/tools/libxl/libxl_event.h > index fad4c14..1ea789e 100644 > --- a/tools/libxl/libxl_event.h > +++ b/tools/libxl/libxl_event.h > @@ -179,9 +179,9 @@ typedef struct libxl__evgen_domain_death > libxl_evgen_domain_death; > int libxl_evenable_domain_death(libxl_ctx *ctx, uint32_t domid, > libxl_ev_user, libxl_evgen_domain_death > **evgen_out); > void libxl_evdisable_domain_death(libxl_ctx *ctx, > libxl_evgen_domain_death*); > - /* Arranges for the generation of DOMAIN_SHUTDOWN and DOMAIN_DESTROY > + /* Arranges for the generation of DOMAIN_SHUTDOWN and DOMAIN_DEATH > * events. A domain which is destroyed before it shuts down > - * may generate only a DESTROY event. > + * may generate only a DEATH event. > */ > > typedef struct libxl__evgen_disk_eject libxl_evgen_disk_eject; _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel