Messages in this thread Patch in this message | | | Date | Wed, 08 Apr 2009 15:06:12 +0800 | From | Li Zefan <> | Subject | [PATCH 1/6] xattr: use memdup_user() |
| |
Remove open-coded memdup_user()
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> --- fs/xattr.c | 10 +++------- 1 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/fs/xattr.c b/fs/xattr.c index 197c4fc..d51b8f9 100644 --- a/fs/xattr.c +++ b/fs/xattr.c @@ -237,13 +237,9 @@ setxattr(struct dentry *d, const char __user *name, const void __user *value, if (size) { if (size > XATTR_SIZE_MAX) return -E2BIG; - kvalue = kmalloc(size, GFP_KERNEL); - if (!kvalue) - return -ENOMEM; - if (copy_from_user(kvalue, value, size)) { - kfree(kvalue); - return -EFAULT; - } + kvalue = memdup_user(value, size); + if (IS_ERR(kvalue)) + return PTR_ERR(kvalue); } error = vfs_setxattr(d, kname, kvalue, size, flags); -- 1.5.4.rc3
| |