[PATCH 0/7] Kernel Userspace protection for PPC32

Christophe Leroy christophe.leroy at c-s.fr
Wed Mar 6 08:18:13 AEDT 2019


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



More information about the Linuxppc-dev mailing list