net/virtio-user: fail if cq used with packed vq

Until we have support for control virtqueues let's disable it and
fail device initalization if specified as a parameter.

Signed-off-by: Jens Freimann <jfreimann@redhat.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
This commit is contained in:
Jens Freimann 2018-12-17 22:31:38 +01:00 committed by Ferruh Yigit
parent 34f3966c7f
commit 07dd7e250d

View File

@ -467,10 +467,16 @@ virtio_user_dev_init(struct virtio_user_dev *dev, char *path, int queues,
if (!in_order)
dev->unsupported_features |= (1ull << VIRTIO_F_IN_ORDER);
if (packed_vq)
if (packed_vq) {
if (cq) {
PMD_INIT_LOG(ERR, "control vq not supported yet with "
"packed virtqueues\n");
return -1;
}
dev->device_features |= (1ull << VIRTIO_F_RING_PACKED);
else
} else {
dev->device_features &= ~(1ull << VIRTIO_F_RING_PACKED);
}
if (dev->mac_specified) {
dev->device_features |= (1ull << VIRTIO_NET_F_MAC);