summaryrefslogtreecommitdiff
path: root/drivers/vdpa/ifcvf/ifcvf_base.c
diff options
context:
space:
mode:
authorZhu Lingshan <lingshan.zhu@intel.com>2023-06-12 18:14:18 +0300
committerMichael S. Tsirkin <mst@redhat.com>2023-07-03 19:15:12 +0300
commit7712832201eadb871c15ed96be1ec60d1e3ecacf (patch)
tree224caaba9aed3eb39f6bdb1b1ed26379b57b137a /drivers/vdpa/ifcvf/ifcvf_base.c
parentbc9a2b3e686e32ebd764d92e66e21c01e23ffb16 (diff)
downloadlinux-7712832201eadb871c15ed96be1ec60d1e3ecacf.tar.xz
vDPA/ifcvf: dynamic allocate vq data stores
This commit dynamically allocates the data stores for the virtqueues based on virtio_pci_common_cfg.num_queues. Signed-off-by: Zhu Lingshan <lingshan.zhu@intel.com> Message-Id: <20230612151420.1019504-2-lingshan.zhu@intel.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'drivers/vdpa/ifcvf/ifcvf_base.c')
-rw-r--r--drivers/vdpa/ifcvf/ifcvf_base.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/vdpa/ifcvf/ifcvf_base.c b/drivers/vdpa/ifcvf/ifcvf_base.c
index 1b5da11f5403..f86495ace825 100644
--- a/drivers/vdpa/ifcvf/ifcvf_base.c
+++ b/drivers/vdpa/ifcvf/ifcvf_base.c
@@ -134,6 +134,9 @@ next:
}
hw->nr_vring = vp_ioread16(&hw->common_cfg->num_queues);
+ hw->vring = kzalloc(sizeof(struct vring_info) * hw->nr_vring, GFP_KERNEL);
+ if (!hw->vring)
+ return -ENOMEM;
for (i = 0; i < hw->nr_vring; i++) {
vp_iowrite16(i, &hw->common_cfg->queue_select);