linux/arch
Andrew Donnellan e83c40f7bb powerpc: Fix __clear_user() with KUAP enabled
commit 61e3acd8c6 upstream.

The KUAP implementation adds calls in clear_user() to enable and
disable access to userspace memory. However, it doesn't add these to
__clear_user(), which is used in the ptrace regset code.

As there's only one direct user of __clear_user() (the regset code),
and the time taken to set the AMR for KUAP purposes is going to
dominate the cost of a quick access_ok(), there's not much point
having a separate path.

Rename __clear_user() to __arch_clear_user(), and make __clear_user()
just call clear_user().

Reported-by: syzbot+f25ecf4b2982d8c7a640@syzkaller-ppc64.appspotmail.com
Reported-by: Daniel Axtens <dja@axtens.net>
Suggested-by: Michael Ellerman <mpe@ellerman.id.au>
Fixes: de78a9c42a ("powerpc: Add a framework for Kernel Userspace Access Protection")
Signed-off-by: Andrew Donnellan <ajd@linux.ibm.com>
[mpe: Use __arch_clear_user() for the asm version like arm64 & nds32]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20191209132221.15328-1-ajd@linux.ibm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-04 19:18:37 +01:00
..
alpha
arc
arm libfdt: define INT32_MAX and UINT32_MAX in libfdt_env.h 2020-01-04 19:18:28 +01:00
arm64 KVM: arm64: Ensure 'params' is initialised when looking up sys register 2019-12-31 16:46:24 +01:00
c6x
csky
h8300
hexagon
ia64
m68k
microblaze
mips Revert "MIPS: futex: Emit Loongson3 sync workarounds within asm" 2020-01-04 19:16:21 +01:00
nds32
nios2
openrisc
parisc
powerpc powerpc: Fix __clear_user() with KUAP enabled 2020-01-04 19:18:37 +01:00
riscv
s390 s390: disable preemption when switching to nodat stack with CALL_ON_STACK 2020-01-04 19:18:31 +01:00
sh pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B 2019-12-31 16:44:32 +01:00
sparc sparc64: implement ioremap_uc 2019-12-13 08:42:17 +01:00
um um: virtio: Keep reading on -EAGAIN 2020-01-04 19:18:24 +01:00
unicore32
x86 x86/mce: Fix possibly incorrect severity calculation on AMD 2019-12-31 16:46:27 +01:00
xtensa xtensa: fix syscall_set_return_value 2019-12-21 11:04:35 +01:00
.gitignore
Kconfig