xfs
[Top] [All Lists]

Re: [PATCH 4/6] xfs: use memdup_user()

To: Li Zefan <lizf@xxxxxxxxxxxxxx>
Subject: Re: [PATCH 4/6] xfs: use memdup_user()
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Wed, 8 Apr 2009 09:22:54 -0400
Cc: felixb@xxxxxxx, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>, LKML <linux-kernel@xxxxxxxxxxxxxxx>, xfs@xxxxxxxxxxx
In-reply-to: <49DC4D54.3020001@xxxxxxxxxxxxxx>
References: <49DC4CC0.9050805@xxxxxxxxxxxxxx> <49DC4D54.3020001@xxxxxxxxxxxxxx>
User-agent: Mutt/1.5.18 (2008-05-17)
On Wed, Apr 08, 2009 at 03:08:04PM +0800, Li Zefan wrote:
> Remove open-coded memdup_user()
> 
> Signed-off-by: Li Zefan <lizf@xxxxxxxxxxxxxx>
> ---
>  fs/xfs/linux-2.6/xfs_ioctl.c   |   23 +++++++----------------
>  fs/xfs/linux-2.6/xfs_ioctl32.c |   12 ++++--------
>  2 files changed, 11 insertions(+), 24 deletions(-)
> 
> diff --git a/fs/xfs/linux-2.6/xfs_ioctl.c b/fs/xfs/linux-2.6/xfs_ioctl.c
> index d0b4994..34eaab6 100644
> --- a/fs/xfs/linux-2.6/xfs_ioctl.c
> +++ b/fs/xfs/linux-2.6/xfs_ioctl.c
> @@ -489,17 +489,12 @@ xfs_attrmulti_attr_set(
>       if (len > XATTR_SIZE_MAX)
>               return EINVAL;
>  
> -     kbuf = kmalloc(len, GFP_KERNEL);
> -     if (!kbuf)
> -             return ENOMEM;
> -
> -     if (copy_from_user(kbuf, ubuf, len))
> -             goto out_kfree;
> +     kbuf = memdup_user(ubuf, len);
> +     if (IS_ERR(kbuf))
> +             return PTR_ERR(kbuf);

wouldn't NULL be a better error return for this kind of interface,
matching kmalloc?


Otherwise the patch looks good to me.

Reviewed-by: Christoph Hellwig <hch@xxxxxx>

<Prev in Thread] Current Thread [Next in Thread>