[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] question about migration
Andrew Cooper writes ("Re: [Xen-devel] question about migration"): > On 05/01/16 15:40, Ian Jackson wrote: > > Would you like to prepare a patch ? > > I don't have a repro of the issue. This thread was merely me triaging > an issue reported by Wen, given some `git grep`. (There are actually 3 > different bugs on different subthreads of this thread.) I will do so then. > >> In general however, no. Consider a libxl user (such as a snapshotting > >> utility) which asks a domain to suspend to quiesce the disks and then > >> intends to resume the domain. > > > > Currently such a utility would have to use > > libxl_evenable_domain_death to discover when the domain suspends, but > > that would cause breakage as discussed in this thread. So I think > > such a utility would need a new libxl evenable interface. Do you > > agree ? > > This looks like a yakk. It's a yak that someone would have to shave when they wanted to write such a utility. > Changing the behaviour of libxl_evenable_domain_death() will break the > API and also break in-guest users. It also doesn't return the shutdown > code, so the caller can't loop while shutdown && suspend. I don't understand what you mean. Currently libxl_evenable_domain_death reports DOMAIN_SHUTDOWN and provides the reason code. But it only does so once, so when a domain is migrated it triggers during the suspend-for-migrate and then generates no further SHUTDOWN event. So any code trying to use this for your snapshotting case is already broken and cannot be fixed without introducing a new API (probably one which generates separate suspend/unsuspend events). (We can't have libxl_evenable_domain_death generate new unsuspend events because existing callers won't understand.) I therefore propose that: libxl_evenable_domain_death should never generate DOMAIN_SHUTDOWN with reason code suspended. Instead, it should hope that the domain will go back to running. If the domain ends up shut down for some other reason, or is destroyed, it should report those things. In the future we introduce libxl_evenable_domain_state which generates the existing events from libxl_evenable_domain_death but also two new events DOMAIN_SUSPENDED or DOMAIN_RUNNING. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |