vhost-vsock: add virtio sockets device
commitfc0b9b0e1cbb49017ea882758634cf876be17bc3
authorStefan Hajnoczi <stefanha@redhat.com>
Tue, 16 Aug 2016 12:27:22 +0000 (16 13:27 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Fri, 9 Sep 2016 21:28:08 +0000 (10 00:28 +0300)
tree2776687fb2ca563fae8a0a8196da7a78fcdac64d
parent947b205fdb46941453f0dc43316e13741d45834c
vhost-vsock: add virtio sockets device

Implement the new virtio sockets device for host<->guest communication
using the Sockets API.  Most of the work is done in a vhost kernel
driver so that virtio-vsock can hook into the AF_VSOCK address family.
The QEMU vhost-vsock device handles configuration and live migration
while the rx/tx happens in the vhost_vsock.ko Linux kernel driver.

The vsock device must be given a CID (host-wide unique address):

  # qemu -device vhost-vsock-pci,id=vhost-vsock-pci0,guest-cid=3 ...

For more information see:
http://qemu-project.org/Features/VirtioVsock

[Endianness fixes and virtio-ccw support by Claudio Imbrenda
<imbrenda@linux.vnet.ibm.com>]

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
[mst: rebase to master]
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
configure
hw/s390x/virtio-ccw.c
hw/s390x/virtio-ccw.h
hw/virtio/Makefile.objs
hw/virtio/vhost-backend.c
hw/virtio/vhost-vsock.c [new file with mode: 0644]
hw/virtio/virtio-pci.c
hw/virtio/virtio-pci.h
include/hw/pci/pci.h
include/hw/virtio/vhost-backend.h
include/hw/virtio/vhost-vsock.h [new file with mode: 0644]