aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mn10300/lib/usercopy.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-08-20 16:33:10 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2016-09-13 17:49:42 -0400
commitae7cc577ec2a4a6151c9e928fd1f595d953ecef1 (patch)
treef5e96216d665c7c4e4e839a0c5322ba1e8c775b6 /arch/mn10300/lib/usercopy.c
parent43403eabf558d2800b429cd886e996fd555aa542 (diff)
mn10300: copy_from_user() should zero on access_ok() failure...
Cc: stable@vger.kernel.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/mn10300/lib/usercopy.c')
-rw-r--r--arch/mn10300/lib/usercopy.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mn10300/lib/usercopy.c b/arch/mn10300/lib/usercopy.c
index 7826e6c364e7..ce8899e5e171 100644
--- a/arch/mn10300/lib/usercopy.c
+++ b/arch/mn10300/lib/usercopy.c
@@ -9,7 +9,7 @@
9 * as published by the Free Software Foundation; either version 9 * as published by the Free Software Foundation; either version
10 * 2 of the Licence, or (at your option) any later version. 10 * 2 of the Licence, or (at your option) any later version.
11 */ 11 */
12#include <asm/uaccess.h> 12#include <linux/uaccess.h>
13 13
14unsigned long 14unsigned long
15__generic_copy_to_user(void *to, const void *from, unsigned long n) 15__generic_copy_to_user(void *to, const void *from, unsigned long n)
@@ -24,6 +24,8 @@ __generic_copy_from_user(void *to, const void *from, unsigned long n)
24{ 24{
25 if (access_ok(VERIFY_READ, from, n)) 25 if (access_ok(VERIFY_READ, from, n))
26 __copy_user_zeroing(to, from, n); 26 __copy_user_zeroing(to, from, n);
27 else
28 memset(to, 0, n);
27 return n; 29 return n;
28} 30}
29 31