[libvirt] [Qemu-devel] Re: Supporting hypervisor specific APIs in libvirt

Luiz Capitulino lcapitulino at redhat.com
Thu Mar 25 14:09:59 UTC 2010

On Thu, 25 Mar 2010 08:57:36 -0500
Anthony Liguori <anthony at codemonkey.ws> wrote:

> On 03/25/2010 08:48 AM, Avi Kivity wrote:
> >>
> >> But an awful lot of the providers for pegasus are written in C.
> >
> > But we're concerned with only one, the virt provider.  None of the 
> > others will use libqemu?
> >
> >> The point is, C is a lowest common denominator and it's important to 
> >> support in a proper way.
> >
> > Problem is, it means horrible support for everyone else.
> Why?

 Because it's useless for non C clients. QMP is language independent,
libqemu is a full machinery for C clients only.

> We can provide a generic QMP dispatch interface that high level 
> languages can use.  Then they can do fancy dispatch, treat QErrors as 
> exceptions, etc.

 They can do that by accessing QMP directly. Why would a Python developer
get in the mess of writing a Python binding for libqemu if they call do
the exactly same thing by using its native json module?

 Man, opening a QMP connection from Python and sending commands can be
done with a few lines.

> We just ought to also provide some simple C wrappers for all of the 
> functions.  Yes, the C interface is inferior to the generic interface 
> but that's fine.

 Why don't we start with my simple lib suggestion and wait one or two
releases to see what happens?

More information about the libvir-list mailing list