vhost-vdpa: introduce uAPI to get the number of virtqueue groups

Follows the vDPA support for multiple address spaces, this patch
introduce uAPI for the userspace to know the number of virtqueue
groups supported by the vDPA device.

Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Gautam Dawar <gdawar@xilinx.com>
Message-Id: <20220330180436.24644-12-gdawar@xilinx.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
Gautam Dawar 2022-03-30 23:33:51 +05:30 committed by Michael S. Tsirkin
parent 3d56987938
commit 3ace88bd37
2 changed files with 7 additions and 1 deletions

View File

@ -559,6 +559,10 @@ static long vhost_vdpa_unlocked_ioctl(struct file *filep,
case VHOST_VDPA_GET_VRING_NUM: case VHOST_VDPA_GET_VRING_NUM:
r = vhost_vdpa_get_vring_num(v, argp); r = vhost_vdpa_get_vring_num(v, argp);
break; break;
case VHOST_VDPA_GET_GROUP_NUM:
r = copy_to_user(argp, &v->vdpa->ngroups,
sizeof(v->vdpa->ngroups));
break;
case VHOST_SET_LOG_BASE: case VHOST_SET_LOG_BASE:
case VHOST_SET_LOG_FD: case VHOST_SET_LOG_FD:
r = -ENOIOCTLCMD; r = -ENOIOCTLCMD;

View File

@ -145,11 +145,13 @@
/* Get the valid iova range */ /* Get the valid iova range */
#define VHOST_VDPA_GET_IOVA_RANGE _IOR(VHOST_VIRTIO, 0x78, \ #define VHOST_VDPA_GET_IOVA_RANGE _IOR(VHOST_VIRTIO, 0x78, \
struct vhost_vdpa_iova_range) struct vhost_vdpa_iova_range)
/* Get the config size */ /* Get the config size */
#define VHOST_VDPA_GET_CONFIG_SIZE _IOR(VHOST_VIRTIO, 0x79, __u32) #define VHOST_VDPA_GET_CONFIG_SIZE _IOR(VHOST_VIRTIO, 0x79, __u32)
/* Get the count of all virtqueues */ /* Get the count of all virtqueues */
#define VHOST_VDPA_GET_VQS_COUNT _IOR(VHOST_VIRTIO, 0x80, __u32) #define VHOST_VDPA_GET_VQS_COUNT _IOR(VHOST_VIRTIO, 0x80, __u32)
/* Get the number of virtqueue groups. */
#define VHOST_VDPA_GET_GROUP_NUM _IOR(VHOST_VIRTIO, 0x81, __u32)
#endif #endif