[PATCH 0/7] Kernel Userspace protection for PPC32

From: Christophe Leroy
Date: Tue Mar 05 2019 - 16:18:25 EST


This series intend to implement Kernel Userspace protection for PPC32.
It comes on top of the v4 series for Radix.

Christophe Leroy (6):
powerpc/8xx: Only define APG0 and APG1
powerpc/8xx: Add Kernel Userspace Execution Prevention
powerpc/32: Prepare for Kernel Userspace Access Protection
powerpc/8xx: Add Kernel Userspace Access Protection
powerpc/book3s32: Prepare Kernel Userspace Access Protection
powerpc/book3s32: Implement Kernel Userspace Access Protection

Russell Currey (1):
powerpc/64s: Implement KUAP for Radix MMU (SQUASH)

Documentation/admin-guide/kernel-parameters.txt | 4 +-
arch/powerpc/include/asm/book3s/32/kup.h | 96 +++++++++++++++++++++++++
arch/powerpc/include/asm/book3s/32/mmu-hash.h | 4 ++
arch/powerpc/include/asm/book3s/64/kup-radix.h | 79 ++++++++++++++++++++
arch/powerpc/include/asm/exception-64s.h | 2 +
arch/powerpc/include/asm/feature-fixups.h | 3 +
arch/powerpc/include/asm/futex.h | 4 ++
arch/powerpc/include/asm/kup.h | 72 +++++++++++++++++++
arch/powerpc/include/asm/mmu.h | 10 ++-
arch/powerpc/include/asm/nohash/32/kup-8xx.h | 52 ++++++++++++++
arch/powerpc/include/asm/nohash/32/mmu-8xx.h | 26 +++++--
arch/powerpc/include/asm/processor.h | 3 +
arch/powerpc/include/asm/ptrace.h | 11 ++-
arch/powerpc/include/asm/reg.h | 1 +
arch/powerpc/include/asm/uaccess.h | 38 +++++++---
arch/powerpc/kernel/asm-offsets.c | 7 ++
arch/powerpc/kernel/entry_32.S | 16 +++--
arch/powerpc/kernel/entry_64.S | 22 +++++-
arch/powerpc/kernel/exceptions-64s.S | 3 +
arch/powerpc/kernel/head_32.S | 35 ++++++---
arch/powerpc/kernel/idle_book3s.S | 39 ++++++++++
arch/powerpc/kernel/setup_64.c | 10 +++
arch/powerpc/lib/checksum_wrappers.c | 4 ++
arch/powerpc/lib/code-patching.c | 4 +-
arch/powerpc/mm/8xx_mmu.c | 24 +++++++
arch/powerpc/mm/fault.c | 28 +++++---
arch/powerpc/mm/hash_low_32.S | 6 +-
arch/powerpc/mm/init-common.c | 26 +++++++
arch/powerpc/mm/init_32.c | 3 +
arch/powerpc/mm/pgtable-radix.c | 31 +++++++-
arch/powerpc/mm/pkeys.c | 1 +
arch/powerpc/mm/ppc_mmu_32.c | 10 +++
arch/powerpc/platforms/Kconfig.cputype | 36 ++++++++++
33 files changed, 657 insertions(+), 53 deletions(-)
create mode 100644 arch/powerpc/include/asm/book3s/32/kup.h
create mode 100644 arch/powerpc/include/asm/book3s/64/kup-radix.h
create mode 100644 arch/powerpc/include/asm/kup.h
create mode 100644 arch/powerpc/include/asm/nohash/32/kup-8xx.h

--
2.13.3