Add vhost-user as a vhost backend.
commit5f6f6664bf24dc53f4bf98ba812d55ca93684cd5
authorNikolay Nikolaev <n.nikolaev@virtualopensystems.com>
Tue, 27 May 2014 12:06:02 +0000 (27 15:06 +0300)
committerMichael S. Tsirkin <mst@redhat.com>
Thu, 19 Jun 2014 13:41:56 +0000 (19 16:41 +0300)
treee9bf1da0991e4121846816380eec88bd29e51487
parent1a1bfac9ee13d76a4b257431cc4193c8a42efa19
Add vhost-user as a vhost backend.

The initialization takes a chardev backed by a unix domain socket.
It should implement qemu_fe_set_msgfds in order to be able to pass
file descriptors to the remote process.

Each ioctl request of vhost-kernel has a vhost-user message equivalent,
which is sent over the control socket.

The general approach is to copy the data from the supplied argument
pointer to a designated field in the message. If a file descriptor is
to be passed it will be placed in the fds array for inclusion in
the sendmsg control header.

VHOST_SET_MEM_TABLE ignores the supplied vhost_memory structure and scans
the global ram_list for ram blocks with a valid fd field set. This would
be set when the '-object memory-file' option with share=on property is used.

Signed-off-by: Antonios Motakis <a.motakis@virtualopensystems.com>
Signed-off-by: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/virtio/Makefile.objs
hw/virtio/vhost-backend.c
hw/virtio/vhost-user.c [new file with mode: 0644]