[PATCH v10 00/10] powerpc: Further Strict RWX support
From: Jordan Niethe <hidden>
Date: 2021-03-30 04:52:18
Another revision to this series adding more Strict RWX support on powerpc, in
particular Strict Module RWX. This revision adds consideration for bpf.
The changes in v10 for each patch:
Christophe Leroy (2):
powerpc/mm: implement set_memory_attr()
powerpc/32: use set_memory_attr()
Jordan Niethe (3):
powerpc/lib/code-patching: Set up Strict RWX patching earlier
powerpc: Always define MODULES_{VADDR,END}
v10: - New to series
powerpc/bpf: Write protect JIT code
v10: - New to series
Russell Currey (5):
powerpc/mm: Implement set_memory() routines
v10: - WARN if trying to change the hash linear map
powerpc/kprobes: Mark newly allocated probes as ROX
v10: - Use __vmalloc_node_range()
powerpc/mm/ptdump: debugfs handler for W+X checks at runtime
v10: check_wx_pages now affects kernel_page_tables rather
then triggers its own action.
powerpc: Set ARCH_HAS_STRICT_MODULE_RWX
v10: - Predicate on !PPC_BOOK3S_604
- Make module_alloc() use PAGE_KERNEL protection
powerpc/configs: Enable STRICT_MODULE_RWX in skiroot_defconfig
arch/powerpc/Kconfig | 2 +
arch/powerpc/Kconfig.debug | 6 +-
arch/powerpc/configs/skiroot_defconfig | 1 +
arch/powerpc/include/asm/pgtable.h | 5 +
arch/powerpc/include/asm/set_memory.h | 34 +++++++
arch/powerpc/kernel/kprobes.c | 14 +++
arch/powerpc/kernel/module.c | 14 +--
arch/powerpc/lib/code-patching.c | 12 +--
arch/powerpc/mm/Makefile | 2 +-
arch/powerpc/mm/pageattr.c | 121 +++++++++++++++++++++++++
arch/powerpc/mm/pgtable_32.c | 60 ++----------
arch/powerpc/mm/ptdump/ptdump.c | 34 ++++++-
arch/powerpc/net/bpf_jit_comp.c | 5 +-
arch/powerpc/net/bpf_jit_comp64.c | 4 +
14 files changed, 245 insertions(+), 69 deletions(-)
create mode 100644 arch/powerpc/include/asm/set_memory.h
create mode 100644 arch/powerpc/mm/pageattr.c
--
2.25.1