Commit b9ebf948 authored by Dariusz Stojaczyk's avatar Dariusz Stojaczyk Committed by Jim Harris
Browse files

rte_virtio: removed virtio_user_dev->max_queues



Generic virtio_dev has the same field already.

The field was previously used to store vhost-user
GET_QUEUE_NUM response, that will be later assigned
to virtio_dev->max_queues via virtio_user_read_dev_config.

This patch removes virtio_user_dev->max_queues
with entire virtio_user_read_dev_config functionality
for virtio_user.

Change-Id: I508f728215a95cf977d6b0b20350fcf2ae11fe3a
Signed-off-by: default avatarDariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/379155


Tested-by: default avatarSPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarDaniel Verkamp <daniel.verkamp@intel.com>
parent 3c6f0638
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -608,7 +608,7 @@ bdev_virtio_initialize(void)
				SPDK_ERRLOG("No path specified for index %d\n", i);
				continue;
			}
			vdev = virtio_user_dev_init(path, 1, 512);
			vdev = virtio_user_dev_init(path, 512);
			if (vdev == NULL) {
				goto out;
			}
+0 −2
Original line number Diff line number Diff line
@@ -300,8 +300,6 @@ virtio_init_device(struct virtio_dev *dev, uint64_t req_features)
	if (virtio_negotiate_features(dev, req_features) < 0)
		return -1;

	vtpci_read_dev_config(dev, offsetof(struct virtio_scsi_config, num_queues),
			      &dev->max_queues, sizeof(dev->max_queues));
	/* FIXME
	 * Hardcode num_queues to 3 until we add proper
	 * mutli-queue support. This value should be limited
+4 −1
Original line number Diff line number Diff line
@@ -45,7 +45,10 @@
struct virtio_dev {
	struct virtqueue **vqs;
	uint16_t	started;
	uint32_t	max_queues;

	/** Max number of queues the host supports. */
	uint16_t	max_queues;

	uint8_t		port_id;
	uint64_t	req_guest_features;
	uint64_t	guest_features;
+4 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@
 #include <fcntl.h>
#endif

#include <linux/virtio_scsi.h>
#include <rte_io.h>

#include "virtio_pci.h"
@@ -731,6 +732,9 @@ pci_enum_virtio_probe_cb(void *ctx, struct spdk_pci_device *pci_dev)
	VTPCI_OPS(vdev) = &legacy_ops;
	vdev->modern   = 0;

	vtpci_read_dev_config(vdev, offsetof(struct virtio_scsi_config, num_queues),
			      &vdev->max_queues, sizeof(vdev->max_queues));

	TAILQ_INSERT_TAIL(&g_virtio_driver.init_ctrlrs, vdev, tailq);
	return 0;
}
+1 −4
Original line number Diff line number Diff line
@@ -57,10 +57,7 @@ static void
virtio_user_read_dev_config(struct virtio_dev *vdev, size_t offset,
		     void *dst, int length)
{
	struct virtio_user_dev *dev = virtio_dev_get_user_dev(vdev);

	if (offset == offsetof(struct virtio_scsi_config, num_queues))
		*(uint16_t *)dst = dev->max_queues;
	PMD_DRV_LOG(ERR, "not supported offset=%zu, len=%d", offset, length);
}

static void
Loading