vdpa: support exposing the count of vqs to userspace
- GET_VQS_COUNT: the count of virtqueues that exposed Signed-off-by: Longpeng <longpeng2@huawei.com> Link: https://lore.kernel.org/r/20220315032553.455-4-longpeng2@huawei.com Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Jason Wang <jasowang@redhat.com> Signed-off-by: Longpeng <<a href="mailto:longpeng2@huawei.com" target="_blank">longpeng2@huawei.com</a>><br> Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
This commit is contained in:
parent
81d46d6931
commit
b04d910af3
@ -373,6 +373,16 @@ static long vhost_vdpa_get_config_size(struct vhost_vdpa *v, u32 __user *argp)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static long vhost_vdpa_get_vqs_count(struct vhost_vdpa *v, u32 __user *argp)
|
||||||
|
{
|
||||||
|
struct vdpa_device *vdpa = v->vdpa;
|
||||||
|
|
||||||
|
if (copy_to_user(argp, &vdpa->nvqs, sizeof(vdpa->nvqs)))
|
||||||
|
return -EFAULT;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static long vhost_vdpa_vring_ioctl(struct vhost_vdpa *v, unsigned int cmd,
|
static long vhost_vdpa_vring_ioctl(struct vhost_vdpa *v, unsigned int cmd,
|
||||||
void __user *argp)
|
void __user *argp)
|
||||||
{
|
{
|
||||||
@ -513,6 +523,9 @@ static long vhost_vdpa_unlocked_ioctl(struct file *filep,
|
|||||||
case VHOST_VDPA_GET_CONFIG_SIZE:
|
case VHOST_VDPA_GET_CONFIG_SIZE:
|
||||||
r = vhost_vdpa_get_config_size(v, argp);
|
r = vhost_vdpa_get_config_size(v, argp);
|
||||||
break;
|
break;
|
||||||
|
case VHOST_VDPA_GET_VQS_COUNT:
|
||||||
|
r = vhost_vdpa_get_vqs_count(v, argp);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
r = vhost_dev_ioctl(&v->vdev, cmd, argp);
|
r = vhost_dev_ioctl(&v->vdev, cmd, argp);
|
||||||
if (r == -ENOIOCTLCMD)
|
if (r == -ENOIOCTLCMD)
|
||||||
|
@ -154,4 +154,7 @@
|
|||||||
/* 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 */
|
||||||
|
#define VHOST_VDPA_GET_VQS_COUNT _IOR(VHOST_VIRTIO, 0x80, __u32)
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user