On Tue, Mar 15, 2022 at 11:26 AM Longpeng(Mike) <[email protected]>
wrote:

> From: Longpeng <[email protected]>
>
> - GET_VQS_COUNT: the count of virtqueues that exposed
>

Acked-by: Jason Wang <[email protected]>


>
> Signed-off-by: Longpeng <[email protected]>
> ---
>  drivers/vhost/vdpa.c       | 13 +++++++++++++
>  include/uapi/linux/vhost.h |  3 +++
>  2 files changed, 16 insertions(+)
>
> diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
> index 0c82eb5..69b3f05 100644
> --- a/drivers/vhost/vdpa.c
> +++ b/drivers/vhost/vdpa.c
> @@ -370,6 +370,16 @@ static long vhost_vdpa_get_config_size(struct
> vhost_vdpa *v, u32 __user *argp)
>         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,
>                                    void __user *argp)
>  {
> @@ -510,6 +520,9 @@ static long vhost_vdpa_unlocked_ioctl(struct file
> *filep,
>         case VHOST_VDPA_GET_CONFIG_SIZE:
>                 r = vhost_vdpa_get_config_size(v, argp);
>                 break;
> +       case VHOST_VDPA_GET_VQS_COUNT:
> +               r = vhost_vdpa_get_vqs_count(v, argp);
> +               break;
>         default:
>                 r = vhost_dev_ioctl(&v->vdev, cmd, argp);
>                 if (r == -ENOIOCTLCMD)
> diff --git a/include/uapi/linux/vhost.h b/include/uapi/linux/vhost.h
> index bc74e95..5d99e7c 100644
> --- a/include/uapi/linux/vhost.h
> +++ b/include/uapi/linux/vhost.h
> @@ -154,4 +154,7 @@
>  /* Get the config size */
>  #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
> --
> 1.8.3.1
>
>
_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to