docs: clarify multiqueue vs multiple virtqueues
commitdf98d7ccc2e9e3e5080cce30a6d9c09dd827dc15
authorStefan Hajnoczi <stefanha@redhat.com>
Mon, 24 Jun 2019 09:13:04 +0000 (24 10:13 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Thu, 25 Jul 2019 08:17:34 +0000 (25 04:17 -0400)
tree1c5bbe58759b3af462d764282a5058094745ccc0
parentbf8b024372bf8abf5a9f40bfa65eeefad23ff988
docs: clarify multiqueue vs multiple virtqueues

The vhost-user specification does not explain when
VHOST_USER_PROTOCOL_F_MQ must be implemented.  This may lead
implementors of vhost-user masters to believe that this protocol feature
is required for any device that has multiple virtqueues.  That would be
a mistake since existing vhost-user slaves offer multiple virtqueues but
do not advertise VHOST_USER_PROTOCOL_F_MQ.

For example, a vhost-net device with one rx/tx queue pair is not
multiqueue.  The slave does not need to advertise
VHOST_USER_PROTOCOL_F_MQ.  Therefore the master must assume it has these
virtqueues and cannot rely on askingt the slave how many virtqueues
exist.

Extend the specification to explain the different between true
multiqueue and regular devices with a fixed virtqueue layout.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20190624091304.666-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>
docs/interop/vhost-user.rst