[libvirt] [PATCH RFC] Add support for QEMU vhost-user feature
Daniel P. Berrange
berrange at redhat.com
Wed Jun 4 15:46:43 UTC 2014
On Wed, May 28, 2014 at 10:46:27AM +0200, Luke Gorrie wrote:
> vhost-user is a networking backend based on unix domain sockets
> instead of tap devices and ioctl(). This makes it possible for
> userspace networking stacks (vswitches) to provide vhost-networking to
> guests.
>
> Signed-off-by: Luke Gorrie <luke at snabb.co>
> diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
> index 8f17c74..b5ea2f6 100644
> --- a/src/conf/domain_conf.h
> +++ b/src/conf/domain_conf.h
> @@ -791,6 +791,7 @@ struct _virDomainFSDef {
> enum virDomainNetType {
> VIR_DOMAIN_NET_TYPE_USER,
> VIR_DOMAIN_NET_TYPE_ETHERNET,
> + VIR_DOMAIN_NET_TYPE_VHOSTUSER,
> VIR_DOMAIN_NET_TYPE_SERVER,
> VIR_DOMAIN_NET_TYPE_CLIENT,
> VIR_DOMAIN_NET_TYPE_MCAST,
> @@ -877,6 +878,10 @@ struct _virDomainNetDef {
> char *ipaddr;
> } ethernet;
> struct {
> + char *socket;
> + char *mode;
> + } vhostuser;
> + struct {
So your QEMU command line generation code shows that QEMU
is actually allowing any chardev here, not restricted to
a UNIX socket. So you should be using a
virDomainChrSourceDefPtr chardev;
instead of just hardcoding a UNIX socket path + mode.
> +
> + virCommandAddArgList(cmd, "-chardev", virBufferContentAndReset(&buf1),
> + NULL);
> + virCommandAddArgList(cmd, "-netdev", virBufferContentAndReset(&buf2),
> + NULL);
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list