| From foo@baz Fri Mar 16 15:43:17 CET 2018 |
| From: Christophe Leroy <christophe.leroy@c-s.fr> |
| Date: Sat, 9 Dec 2017 17:24:24 +0100 |
| Subject: Fix misannotated out-of-line _copy_to_user() |
| |
| From: Christophe Leroy <christophe.leroy@c-s.fr> |
| |
| |
| [ Upstream commit a0e94598e6b6c0d1df6a5fa14eb7c767ca817a20 ] |
| |
| Destination is a kernel pointer and source - a userland one |
| in _copy_from_user(); _copy_to_user() is the other way round. |
| |
| Fixes: d597580d37377 ("generic ...copy_..._user primitives") |
| Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> |
| Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| lib/usercopy.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/lib/usercopy.c |
| +++ b/lib/usercopy.c |
| @@ -20,7 +20,7 @@ EXPORT_SYMBOL(_copy_from_user); |
| #endif |
| |
| #ifndef INLINE_COPY_TO_USER |
| -unsigned long _copy_to_user(void *to, const void __user *from, unsigned long n) |
| +unsigned long _copy_to_user(void __user *to, const void *from, unsigned long n) |
| { |
| might_fault(); |
| if (likely(access_ok(VERIFY_WRITE, to, n))) { |