On Sat, May 13, 2017 at 11:15:59AM +0800, Geliang Tang wrote:
> Use memdup_user() helper instead of open-coding to simplify the code.
> 
> Signed-off-by: Geliang Tang <geliangt...@gmail.com>
> ---
>  drivers/usb/gadget/function/f_fs.c | 11 +++--------
>  1 file changed, 3 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/usb/gadget/function/f_fs.c 
> b/drivers/usb/gadget/function/f_fs.c
> index 71dd27c..5754538 100644
> --- a/drivers/usb/gadget/function/f_fs.c
> +++ b/drivers/usb/gadget/function/f_fs.c
> @@ -3692,14 +3692,9 @@ static char *ffs_prepare_buffer(const char __user 
> *buf, size_t len)
>       if (unlikely(!len))
>               return NULL;
>  
> -     data = kmalloc(len, GFP_KERNEL);
> -     if (unlikely(!data))
> -             return ERR_PTR(-ENOMEM);
> -
> -     if (unlikely(copy_from_user(data, buf, len))) {
> -             kfree(data);
> -             return ERR_PTR(-EFAULT);
> -     }
> +     data = memdup_user(buf, len);
> +     if (unlikely(IS_ERR(data)))

Don't use likely/unlikely() here.  It's not a fast path.

regards,
dan carpenter


Reply via email to