On Sat, Sep 27, 2025 at 03:25:34PM +0300, Dan Carpenter wrote:
> The group is supposed to be copied to the user, but it wasn't assigned
> until after the copy_to_user().  Move the "s.num = group;" earlier.
> 
> Fixes: ffc3634b6696 ("vduse: add vq group support")
> Signed-off-by: Dan Carpenter <[email protected]>
> ---
> This goes through the kvm tree I think.


Thanks for the patch!

IIUC this was in my tree for next, but more testing
and review found issues (like this one) so I dropped it for now.

>  drivers/vhost/vdpa.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
> index 6305382eacbb..25ab4d06e559 100644
> --- a/drivers/vhost/vdpa.c
> +++ b/drivers/vhost/vdpa.c
> @@ -667,9 +667,9 @@ static long vhost_vdpa_vring_ioctl(struct vhost_vdpa *v, 
> unsigned int cmd,
>               group = ops->get_vq_group(vdpa, idx);
>               if (group >= vdpa->ngroups || group > U32_MAX || group < 0)
>                       return -EIO;
> -             else if (copy_to_user(argp, &s, sizeof(s)))
> -                     return -EFAULT;
>               s.num = group;
> +             if (copy_to_user(argp, &s, sizeof(s)))
> +                     return -EFAULT;
>               return 0;
>       }
>       case VHOST_VDPA_GET_VRING_DESC_GROUP:
> -- 
> 2.51.0


Reply via email to