summaryrefslogtreecommitdiffstats
path: root/kernel/compat.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-02-22 01:41:57 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2013-02-22 02:22:16 +0100
commitbffea77c08c361d174af7ad94887f6aecc3f340b (patch)
treeffe22fc5274c4398be4bd8597292a84ca7b9295d /kernel/compat.c
parentbug.h, compiler.h: introduce compiletime_assert & BUILD_BUG_ON_MSG (diff)
downloadlinux-bffea77c08c361d174af7ad94887f6aecc3f340b.tar.xz
linux-bffea77c08c361d174af7ad94887f6aecc3f340b.zip
compat: return -EFAULT on error in waitid()
The copy_to_user() call returns the number of bytes remaining but we want to return -EFAULT on error. Fixes "x32: fix waitid()" Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/compat.c')
-rw-r--r--kernel/compat.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/compat.c b/kernel/compat.c
index 36700e9e2be9..f4bddb900186 100644
--- a/kernel/compat.c
+++ b/kernel/compat.c
@@ -593,7 +593,7 @@ COMPAT_SYSCALL_DEFINE5(waitid,
else
ret = put_compat_rusage(&ru, uru);
if (ret)
- return ret;
+ return -EFAULT;
}
BUG_ON(info.si_code & __SI_MASK);