RE: [PATCH] misc: xilinx_sdfec: add missing __user annotation
From: Dragan Cvetic
Date: Thu Nov 21 2019 - 10:40:15 EST
Hi Luc,
Find my comments below
> -----Original Message-----
> From: Luc Van Oostenryck [mailto:luc.vanoostenryck@xxxxxxxxx]
> Sent: Thursday 21 November 2019 12:08
> To: linux-kernel@xxxxxxxxxxxxxxx
> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx>; Derek Kiernan
> <dkiernan@xxxxxxxxxx>; Dragan Cvetic <draganc@xxxxxxxxxx>
> Subject: [PATCH] misc: xilinx_sdfec: add missing __user annotation
>
> The second arg of xsdfec_set_order() is a 'void __user *'
> and this pointer is then used in get_user() which expect
> a __user pointer.
>
> But get_user() can't be used with a void pointer, it a
> pointer to the effective type. This is done here by casting
> the argument to a pointer to the effective type but the
> __user is missing in the cast.
>
> Fix this by adding the missing __user in the cast.
>
> CC: Derek Kiernan <derek.kiernan@xxxxxxxxxx>
> CC: Dragan Cvetic <dragan.cvetic@xxxxxxxxxx>
> Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx>
> ---
> drivers/misc/xilinx_sdfec.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/misc/xilinx_sdfec.c b/drivers/misc/xilinx_sdfec.c
> index 11835969e982..f05e1b4c2826 100644
> --- a/drivers/misc/xilinx_sdfec.c
> +++ b/drivers/misc/xilinx_sdfec.c
> @@ -733,7 +733,7 @@ static int xsdfec_set_order(struct xsdfec_dev *xsdfec, void __user *arg)
> enum xsdfec_order order;
> int err;
>
> - err = get_user(order, (enum xsdfec_order *)arg);
> + err = get_user(order, (enum xsdfec_order __user *)arg);
> if (err)
> return -EFAULT;
>
> --
> 2.24.0
Acked-by: Dragan Cvetic <dragan.cvetic@xxxxxxxxxx>