lkml.org 
[lkml]   [2020]   [Nov]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/2] vfio/fsl-mc: return -EFAULT if copy_to_user() fails
From
Date
Acked-by: Diana Craciun <diana.craciun@oss.nxp.com>

On 10/23/2020 2:34 PM, Dan Carpenter wrote:
> The copy_to_user() function returns the number of bytes remaining to be
> copied, but this code should return -EFAULT.
>
> Fixes: df747bcd5b21 ("vfio/fsl-mc: Implement VFIO_DEVICE_GET_REGION_INFO ioctl call")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
> drivers/vfio/fsl-mc/vfio_fsl_mc.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/vfio/fsl-mc/vfio_fsl_mc.c b/drivers/vfio/fsl-mc/vfio_fsl_mc.c
> index 0113a980f974..21f22e3da11f 100644
> --- a/drivers/vfio/fsl-mc/vfio_fsl_mc.c
> +++ b/drivers/vfio/fsl-mc/vfio_fsl_mc.c
> @@ -248,7 +248,9 @@ static long vfio_fsl_mc_ioctl(void *device_data, unsigned int cmd,
> info.size = vdev->regions[info.index].size;
> info.flags = vdev->regions[info.index].flags;
>
> - return copy_to_user((void __user *)arg, &info, minsz);
> + if (copy_to_user((void __user *)arg, &info, minsz))
> + return -EFAULT;
> + return 0;
> }
> case VFIO_DEVICE_GET_IRQ_INFO:
> {
> @@ -267,7 +269,9 @@ static long vfio_fsl_mc_ioctl(void *device_data, unsigned int cmd,
> info.flags = VFIO_IRQ_INFO_EVENTFD;
> info.count = 1;
>
> - return copy_to_user((void __user *)arg, &info, minsz);
> + if (copy_to_user((void __user *)arg, &info, minsz))
> + return -EFAULT;
> + return 0;
> }
> case VFIO_DEVICE_SET_IRQS:
> {
>

\
 
 \ /
  Last update: 2020-11-03 13:03    [W:0.507 / U:0.620 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site