Re: [RFC] Unify KVM kernel-space and user-space code into a single project

Daniel P. Berrange
2010-03-22T19:31:33Z

On Mon, Mar 22, 2010 at 02:15:35PM -0500, Anthony Liguori wrote:
> On 03/22/2010 12:55 PM, Avi Kivity wrote:
> >>Lets look at the ${HOME}/.qemu/qmp/ enumeration method suggested by
> >>Anthony.
> >>There's numerous ways that this can break:
> >
> >I don't like it either. We have libvirt for enumerating guests.
>
> We're stuck in a rut with libvirt and I think a lot of the
> dissatisfaction with qemu is rooted in that. It's not libvirt that's
> the probably, but the relationship between qemu and libvirt.
>
> We add a feature to qemu and maybe after six month it gets exposed by
> libvirt. Release time lines of the two projects complicate the
> situation further. People that write GUIs are limited by libvirt
> because that's what they're told to use and when they need something
> simple, they're presented with first getting that feature implemented in
> qemu, then plumbed through libvirt.

That is somewhat unfair as a blanket statement!

While some features have had a long time delay & others are not supported
at all, in many cases we have had zero delay. We have been supporting QMP,
qdev, vhost-net since before the patches for those features were even merged
in QEMU GIT! It varies depending on how closely QEMU & libvirt people have
been working together on a feature, and on how strongly end users are demanding
the features.

> It wouldn't be so bad if libvirt was basically a passthrough interface
> to qemu but it tries to model everything in a generic way which is more
> or less doomed to fail when you're adding lots of new features (as we are).
>
> The list of things that libvirt doesn't support and won't any time soon
> is staggering.

As previously discussed, we want to improve both the set of features
supported, and make it much easier to support new features promptly.
The QMP & qdev stuff has been a very good step forward in making it
easier to support QEMU management. There have been a proposals from
several people, yourself included, on how to improve libvirt's support
for the full range of QEMU features. We're committed to looking at this
and figuring out which proposals are practical to support, so we can
improve QEMU & libvirt interaction for everyone.

Regards,
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://deltacloud.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|