qemu-e2k/hw/virtio
Kevin Wolf c90bd505a3 vhost-user-blk: Check that num-queues is supported by backend
Creating a device with a number of queues that isn't supported by the
backend is pointless, the device won't work properly and the error
messages are rather confusing.

Just fail to create the device if num-queues is higher than what the
backend supports.

Since the relationship between num-queues and the number of virtqueues
depends on the specific device, this is an additional value that needs
to be initialised by the device. For convenience, allow leaving it 0 if
the check should be skipped. This makes sense for vhost-user-net where
separate vhost devices are used for the queues and custom initialisation
code is needed to perform the check.

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1935031
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Raphael Norwitz <raphael.norwitz@nutanix.com>
Message-Id: <20210429171316.162022-7-kwolf@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2021-05-18 12:57:39 +02:00
..
Kconfig
meson.build
trace-events virtio-pmem: add trace events 2021-02-05 08:52:58 -05:00
trace.h
vhost-backend.c vhost: Check for valid vdev in vhost_backend_handle_iotlb_msg 2021-02-05 08:52:59 -05:00
vhost-scsi-pci.c
vhost-stub.c
vhost-user-blk-pci.c
vhost-user-fs-pci.c vhost-user-fs: add the "bootindex" property 2021-01-13 09:06:37 -05:00
vhost-user-fs.c vhost-user-fs: fix features handling 2021-04-13 16:13:41 +01:00
vhost-user-input-pci.c
vhost-user-scsi-pci.c
vhost-user-vsock-pci.c
vhost-user-vsock.c
vhost-user.c vhost-user-blk: Check that num-queues is supported by backend 2021-05-18 12:57:39 +02:00
vhost-vdpa.c vhost-vdpa: Make vhost_vdpa_get_device_id() static 2021-05-14 10:26:18 -04:00
vhost-vsock-common.c
vhost-vsock-pci.c
vhost-vsock.c
vhost.c Do not include exec/address-spaces.h if it's not really necessary 2021-05-02 17:24:51 +02:00
virtio-9p-pci.c
virtio-balloon-pci.c hw/virtio/virtio-balloon: Remove the "class" property 2021-02-05 08:52:59 -05:00
virtio-balloon.c migrate/ram: remove "ram_bulk_stage" and "fpo_enabled" 2021-05-13 18:21:13 +01:00
virtio-blk-pci.c
virtio-bus.c virtio: Fail if iommu_platform is requested, but unsupported 2021-05-18 12:57:38 +02:00
virtio-crypto-pci.c
virtio-crypto.c
virtio-input-host-pci.c
virtio-input-pci.c
virtio-iommu-pci.c
virtio-iommu.c virtio-iommu: Handle non power of 2 range invalidations 2021-03-12 12:40:10 +00:00
virtio-mem-pci.c
virtio-mem-pci.h
virtio-mem.c migrate/ram: remove "ram_bulk_stage" and "fpo_enabled" 2021-05-13 18:21:13 +01:00
virtio-mmio.c hw/virtio: enable ioeventfd configuring for mmio 2021-05-14 10:26:18 -04:00
virtio-net-pci.c virtio-net: calculating proper msix vectors on init 2021-03-15 16:41:22 +08:00
virtio-pci.c virtio-pci: compat page aligned ATS 2021-04-06 07:11:36 -04:00
virtio-pci.h virtio-pci: compat page aligned ATS 2021-04-06 07:11:36 -04:00
virtio-pmem-pci.c
virtio-pmem-pci.h
virtio-pmem.c virtio-pmem: fix virtio_pmem_resp assign problem 2021-03-22 10:17:53 -04:00
virtio-rng-pci.c
virtio-rng.c sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
virtio-scsi-pci.c
virtio-serial-pci.c
virtio.c pc,pci,virtio: bugfixes, improvements 2021-05-16 17:22:46 +01:00