From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [RFC V7 2/3] libxl domain snapshot API design Date: Wed, 29 Oct 2014 10:26:49 +0000 Message-ID: <1414578409.29975.9.camel@citrix.com> References: <1412930928-14309-1-git-send-email-cyliu@suse.com> <1412930928-14309-3-git-send-email-cyliu@suse.com> <1413821501.29506.13.camel@citrix.com> <54479C3302000066000712E6@soto.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <54479C3302000066000712E6@soto.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Chun Yan Liu Cc: Jim Fehlig , Ian.Jackson@eu.citrix.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org On Tue, 2014-10-21 at 21:59 -0600, Chun Yan Liu wrote: > > Is this operation any different to destroying the domain and using > > libxl_domain_restore to start a new domain based on the snapshot? Is > > this operation just a convenience layer over that operation? > > It depends on implementation. It's a simple way to destroy the domain > first, then start new domain based on snapshot. But destroying the > domain may be not good to user (after xl snapshot-revert, domid is > changed.) and may cause some problem in libvirt (may affect its > event handling ?). I would hope that as part of the implementation libvirt would learn to cope with this if it can't already, but it can surely already cope with migration and reverting to a snapshot is not so very different. > Or another way is: not destroying the domain, but through a process > like pause domain, reload memory, reload disk snapshot, reload config > file, resume domain. Complex but maybe better. I don't think the complexity of resetting an already existing domain's memory and i/o state to an earlier incarnation rather than starting from a clean slate should be underestimated either (TBH it never occurred to me that you might try this). AFAICT you'd need to effectively tear everything down to a blank slate and then do all the same things that you would do in the destroy case. Ian.