[PATCH] drivers/fsi/scom: Return -EFAULT if copy fails

Guenter Roeck linux at roeck-us.net
Tue May 23 08:30:06 AEST 2023


On Fri, May 19, 2023 at 09:37:10AM +0800, Su Hui wrote:
> The copy_to/from_user() functions return the number of bytes remaining
> to be copied, but we want to return -EFAULT to the user.
> 
Why ? EFAULT means that a bad address was provided, and it is not
immediately obvious why that would be the case.

Guenter

> Fixes: 680ca6dcf5c2 ("drivers/fsi: Add SCOM FSI client device driver")
> Signed-off-by: Su Hui <suhui at nfschina.com>
> ---
>  drivers/fsi/fsi-scom.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/fsi/fsi-scom.c b/drivers/fsi/fsi-scom.c
> index bcb756dc9866..caaf7738eb98 100644
> --- a/drivers/fsi/fsi-scom.c
> +++ b/drivers/fsi/fsi-scom.c
> @@ -335,7 +335,7 @@ static ssize_t scom_read(struct file *filep, char __user *buf, size_t len,
>  	if (rc)
>  		dev_dbg(dev, "copy to user failed:%d\n", rc);
>  
> -	return rc ? rc : len;
> +	return rc ? -EFAULT : len;
>  }
>  
>  static ssize_t scom_write(struct file *filep, const char __user *buf,
> -- 
> 2.30.2
> 


More information about the linux-fsi mailing list