Commit 273ae08f authored by Zhu Lingshan's avatar Zhu Lingshan Committed by Michael S. Tsirkin
Browse files

virtio_vdpa: create vqs with the actual size



The size of a virtqueue is a per vq configuration,
this commit allows virtio_vdpa to create
virtqueues with the actual size of a specific
vq size that supported by the backend device.

Signed-off-by: default avatarZhu Lingshan <lingshan.zhu@intel.com>
Message-Id: <20240202163905.8834-9-lingshan.zhu@intel.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent 47e62e6d
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -183,8 +183,11 @@ virtio_vdpa_setup_vq(struct virtio_device *vdev, unsigned int index,
	info = kmalloc(sizeof(*info), GFP_KERNEL);
	if (!info)
		return ERR_PTR(-ENOMEM);

	if (ops->get_vq_size)
		max_num = ops->get_vq_size(vdpa, index);
	else
		max_num = ops->get_vq_num_max(vdpa);

	if (max_num == 0) {
		err = -ENOENT;
		goto error_new_virtqueue;