2021-03-03 02:50:17

by 王擎

[permalink] [raw]
Subject: [PATCH] s390: crypto: Return -EFAULT if copy_to_user() fails

The copy_to_user() function returns the number of bytes remaining to be
copied, but we want to return -EFAULT if the copy doesn't complete.

Signed-off-by: Wang Qing <[email protected]>
---
drivers/s390/crypto/vfio_ap_ops.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/s390/crypto/vfio_ap_ops.c b/drivers/s390/crypto/vfio_ap_ops.c
index 41fc2e413..1ffdd41
--- a/drivers/s390/crypto/vfio_ap_ops.c
+++ b/drivers/s390/crypto/vfio_ap_ops.c
@@ -1286,7 +1286,7 @@ static int vfio_ap_mdev_get_device_info(unsigned long arg)
info.num_regions = 0;
info.num_irqs = 0;

- return copy_to_user((void __user *)arg, &info, minsz);
+ return copy_to_user((void __user *)arg, &info, minsz) ? -EFAULT : 0;
}

static ssize_t vfio_ap_mdev_ioctl(struct mdev_device *mdev,
--
2.7.4


2021-03-03 02:50:54

by Anthony Krowiak

[permalink] [raw]
Subject: Re: [PATCH] s390: crypto: Return -EFAULT if copy_to_user() fails



On 3/1/21 7:08 AM, Wang Qing wrote:
> The copy_to_user() function returns the number of bytes remaining to be
> copied, but we want to return -EFAULT if the copy doesn't complete.
>
> Signed-off-by: Wang Qing <[email protected]>
> ---
> drivers/s390/crypto/vfio_ap_ops.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/s390/crypto/vfio_ap_ops.c b/drivers/s390/crypto/vfio_ap_ops.c
> index 41fc2e413..1ffdd41
> --- a/drivers/s390/crypto/vfio_ap_ops.c
> +++ b/drivers/s390/crypto/vfio_ap_ops.c
> @@ -1286,7 +1286,7 @@ static int vfio_ap_mdev_get_device_info(unsigned long arg)
> info.num_regions = 0;
> info.num_irqs = 0;
>
> - return copy_to_user((void __user *)arg, &info, minsz);
> + return copy_to_user((void __user *)arg, &info, minsz) ? -EFAULT : 0;
> }

LGTM
Reviewed-by: Tony Krowiak <[email protected]>

>
> static ssize_t vfio_ap_mdev_ioctl(struct mdev_device *mdev,

2021-03-03 03:19:24

by Heiko Carstens

[permalink] [raw]
Subject: Re: [PATCH] s390: crypto: Return -EFAULT if copy_to_user() fails

On Mon, Mar 01, 2021 at 08:08:21PM +0800, Wang Qing wrote:
> The copy_to_user() function returns the number of bytes remaining to be
> copied, but we want to return -EFAULT if the copy doesn't complete.
>
> Signed-off-by: Wang Qing <[email protected]>
> ---
> drivers/s390/crypto/vfio_ap_ops.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks!