summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-02-21 16:41:57 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2013-02-21 17:22:16 -0800
commitbffea77c08c361d174af7ad94887f6aecc3f340b (patch)
treeffe22fc5274c4398be4bd8597292a84ca7b9295d
parent9a8ab1c39970a4938a72d94e6fd13be88a797590 (diff)
downloadlinux-bffea77c08c361d174af7ad94887f6aecc3f340b.tar.gz
linux-bffea77c08c361d174af7ad94887f6aecc3f340b.tar.bz2
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>
-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);