From: Al Viro Date: Sat, 20 Aug 2016 20:18:53 +0000 (-0400) Subject: mips: copy_from_user() must zero the destination on access_ok() failure X-Git-Tag: firefly_0821_release~176^2~4^2~28^2~14 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=8b3f6edcdd3e71feaf8cb4c428fd1b58fcf1e0b1;p=firefly-linux-kernel-4.4.55.git mips: copy_from_user() must zero the destination on access_ok() failure commit e69d700535ac43a18032b3c399c69bf4639e89a2 upstream. Signed-off-by: Al Viro Signed-off-by: Greg Kroah-Hartman --- diff --git a/arch/mips/include/asm/uaccess.h b/arch/mips/include/asm/uaccess.h index 095ecafe6bd3..c74c32ccc647 100644 --- a/arch/mips/include/asm/uaccess.h +++ b/arch/mips/include/asm/uaccess.h @@ -14,6 +14,7 @@ #include #include #include +#include #include /* @@ -1170,6 +1171,8 @@ extern size_t __copy_in_user_eva(void *__to, const void *__from, size_t __n); __cu_len = __invoke_copy_from_user(__cu_to, \ __cu_from, \ __cu_len); \ + } else { \ + memset(__cu_to, 0, __cu_len); \ } \ } \ __cu_len; \