projects
/
profile
/
common
/
platform
/
kernel
/
linux-artik7.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
ba45b3f
)
score: fix __get_user/get_user
author
Al Viro
<viro@zeniv.linux.org.uk>
Mon, 22 Aug 2016 02:13:39 +0000
(22:13 -0400)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Sat, 24 Sep 2016 08:07:44 +0000
(10:07 +0200)
commit
c2f18fa4cbb3ad92e033a24efa27583978ce9600
upstream.
* should zero on any failure
* __get_user() should use __copy_from_user(), not copy_from_user()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/score/include/asm/uaccess.h
patch
|
blob
|
history
diff --git
a/arch/score/include/asm/uaccess.h
b/arch/score/include/asm/uaccess.h
index
20a3591
..
c5d4311
100644
(file)
--- a/
arch/score/include/asm/uaccess.h
+++ b/
arch/score/include/asm/uaccess.h
@@
-163,7
+163,7
@@
do { \
__get_user_asm(val, "lw", ptr); \
break; \
case 8: \
- if (
(copy_from_user((void *)&val, ptr, 8)
) == 0) \
+ if (
__copy_from_user((void *)&val, ptr, 8
) == 0) \
__gu_err = 0; \
else \
__gu_err = -EFAULT; \
@@
-188,6
+188,8
@@
do { \
\
if (likely(access_ok(VERIFY_READ, __gu_ptr, size))) \
__get_user_common((x), size, __gu_ptr); \
+ else \
+ (x) = 0; \
\
__gu_err; \
})
@@
-201,6
+203,7
@@
do { \
"2:\n" \
".section .fixup,\"ax\"\n" \
"3:li %0, %4\n" \
+ "li %1, 0\n" \
"j 2b\n" \
".previous\n" \
".section __ex_table,\"a\"\n" \