[lkml]   [2012]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[ 20/95] regset: Return -EFAULT, not -EIO, on host-side memory fault
3.2-stable review patch.  If anyone has any objections, please let me know.

From: "H. Peter Anvin" <>

commit 5189fa19a4b2b4c3bec37c3a019d446148827717 upstream.

There is only one error code to return for a bad user-space buffer
pointer passed to a system call in the same address space as the
system call is executed, and that is EFAULT. Furthermore, the
low-level access routines, which catch most of the faults, return
EFAULT already.

Signed-off-by: H. Peter Anvin <>
Reviewed-by: Oleg Nesterov <>
Acked-by: Roland McGrath <>
Signed-off-by: Linus Torvalds <>
Signed-off-by: Greg Kroah-Hartman <>

include/linux/regset.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/include/linux/regset.h
+++ b/include/linux/regset.h
@@ -339,7 +339,7 @@ static inline int copy_regset_to_user(st

if (!access_ok(VERIFY_WRITE, data, size))
- return -EIO;
+ return -EFAULT;

return regset->get(target, regset, offset, size, NULL, data);
@@ -365,7 +365,7 @@ static inline int copy_regset_from_user(

if (!access_ok(VERIFY_READ, data, size))
- return -EIO;
+ return -EFAULT;

return regset->set(target, regset, offset, size, NULL, data);

 \ /
  Last update: 2012-03-09 21:27    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean