[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[Cluster-devel] Re: [Libvir] virDomainDump() API (equivalent to xm dump) in libvirt?

On Thu, Nov 16, 2006 at 10:36:29AM -0500, Daniel Veillard wrote:
> On Fri, Nov 03, 2006 at 11:56:55AM -0500, Daniel Veillard wrote:
> > On Fri, Nov 03, 2006 at 11:36:32AM -0500, Lon Hohberger wrote:
> > > On Fri, 2006-11-03 at 10:53 -0500, Daniel Veillard wrote:
> > > >     - can we implement it with current xen, again yes, we should be able
> > > >       if we have a full connection (root) to do the same as 'xm dump-core'
> > > 
> > > Yes, given that xm dump-core can do it ;)
> > > 
> > > >     - is the API clean enough, I guess the semantic is relatively clear
> > > >       instead of stating 'If you set the lowest-bit in flags' I would rather
> > > >       define a DumpFlags enum and state that flags is an or'ing of any of them
> > > >       I would probably name the function virDomainDumpCore though to not
> > > >       confuse with virDomainSave 
> > > 
> > > Totally correct here, it should be an enum of flags (with only one
> > > defined initially; I don't know what other flags there might be.
> > > 
> > > >  So yes, why not, you want to work on it ? Or should I (or any candidate).
> > > 
> > > Give me a few; I'll check on this.  I don't have problems trying it, but
> > > I will have a learning curve of course.
> > 
> >   Let's see if I was to do it I would:
> >     0/ check out a CVS tree http://libvirt.org/downloads.html
> >     1/ look how xm communicate with xend on that command
>   Bad news, I looked at this and it seems xm can only use the XML-RPC interface
> to xend to request the dump command, while libvirt uses the HTTP POST interface.
> Adding the support would either require to hack xend or add support for the
> intermediary xml-rpc access which was added in 3.0.2 and likely to disapear soon
> when the new Xen API is used by xm.

  Good news: the fix at the xend level is fairly small and has been accepted

  So adding dump support was a matter of introducing the new API and calling
the usual xend back-end code. I added it and commited it, it's a new entry
point in the driver interface, I still kept the extra flags argument, even if
upon inspection xend doesn't use any of the 'live' or 'crash' argument it
exposes at this API, I just didn't defined any constant for it at this point.
So the new entry is just:

  int  virDomainCoreDump (virDomainPtr domain, const char *to, int flags);

  I commited it to CVS, I also added the 'dump' command to virsh taking the
filename as the only argument (after the domain name or id).


Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard      | virtualization library  http://libvirt.org/
veillard redhat com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine  http://rpmfind.net/

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]