From: Eric Auger Date: Wed, 11 Apr 2018 13:30:38 +0000 (+0200) Subject: vhost: Fix vhost_copy_to_user() X-Git-Tag: v4.17-rc1~37^2~6 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=7ced6c98c7ab7a1f6743931e28671b833af79b1e;p=linux-block.git vhost: Fix vhost_copy_to_user() vhost_copy_to_user is used to copy vring used elements to userspace. We should use VHOST_ADDR_USED instead of VHOST_ADDR_DESC. Fixes: f88949138058 ("vhost: introduce O(1) vq metadata cache") Signed-off-by: Eric Auger Acked-by: Jason Wang Acked-by: Michael S. Tsirkin Signed-off-by: David S. Miller --- diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index bec722e41f58..f44aead98d60 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -744,7 +744,7 @@ static int vhost_copy_to_user(struct vhost_virtqueue *vq, void __user *to, struct iov_iter t; void __user *uaddr = vhost_vq_meta_fetch(vq, (u64)(uintptr_t)to, size, - VHOST_ADDR_DESC); + VHOST_ADDR_USED); if (uaddr) return __copy_to_user(uaddr, from, size);