qemu-e2k/contrib/libvhost-user
Stefan Hajnoczi a9a5c473d2 libvhost-user: advertise vring features
libvhost-user implements several vring features without advertising
them. There is no way for the vhost-user master to detect support for
these features.

Things more or less work today because QEMU assumes the vhost-user
backend always implements certain feature bits like
VIRTIO_RING_F_EVENT_IDX. This is not documented anywhere.

This patch explicitly advertises features implemented in libvhost-user
so that the vhost-user master does not need to make undocumented
assumptions.

Feature bits that libvhost-user now advertises can be removed from
vhost-user-blk.c. Devices should not be responsible for advertising
vring feature bits, that is libvhost-user's job.

Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20200529161338.456017-1-stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2020-06-12 10:17:06 -04:00
..
Makefile.objs libvhost-user: add glib source helper 2017-10-10 23:31:09 +02:00
libvhost-user-glib.c libvhost-user-glib: use g_main_context_get_thread_default() 2020-02-27 03:46:10 -05:00
libvhost-user-glib.h libvhost-user-glib: fix VugDev main fd cleanup 2020-02-27 03:46:10 -05:00
libvhost-user.c libvhost-user: advertise vring features 2020-06-12 10:17:06 -04:00
libvhost-user.h Lift max ram slots limit in libvhost-user 2020-06-12 10:17:06 -04:00