Adding more Strict RWX support on powerpc, in particular Strict Module RWX. Thanks for all of the feedback everyone. It is now rebased on linux-next + powerpc/64s/radix: Enable huge vmalloc mappings (https://lore.kernel.org/linuxppc-dev/20210503091755.613393-1-npig...@gmail.com/)
For reference the previous revision is available here: https://lore.kernel.org/linuxppc-dev/20210510011828.4006623-1-jniet...@gmail.com/ The changes in v14 for each patch: Christophe Leroy (2): powerpc/mm: implement set_memory_attr() powerpc/32: use set_memory_attr() Jordan Niethe (4): powerpc/lib/code-patching: Set up Strict RWX patching earlier powerpc/modules: Make module_alloc() Strict Module RWX aware v14: - Split out from powerpc: Set ARCH_HAS_STRICT_MODULE_RW - Add and use strict_module_rwx_enabled() helper powerpc/bpf: Remove bpf_jit_free() powerpc/bpf: Write protect JIT code Russell Currey (3): powerpc/mm: Implement set_memory() routines v14: - only check is_vm_area_hugepages() for virtual memory powerpc/kprobes: Mark newly allocated probes as ROX v14: - Use strict_module_rwx_enabled() powerpc: Set ARCH_HAS_STRICT_MODULE_RWX v14: - Make changes to module_alloc() its own commit arch/powerpc/Kconfig | 2 + arch/powerpc/include/asm/mmu.h | 5 + arch/powerpc/include/asm/set_memory.h | 34 +++++++ arch/powerpc/kernel/kprobes.c | 17 ++++ arch/powerpc/kernel/module.c | 4 +- arch/powerpc/lib/code-patching.c | 12 +-- arch/powerpc/mm/Makefile | 2 +- arch/powerpc/mm/pageattr.c | 134 ++++++++++++++++++++++++++ arch/powerpc/mm/pgtable_32.c | 60 ++---------- arch/powerpc/net/bpf_jit_comp.c | 13 +-- 10 files changed, 211 insertions(+), 72 deletions(-) create mode 100644 arch/powerpc/include/asm/set_memory.h create mode 100644 arch/powerpc/mm/pageattr.c -- 2.25.1