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/20210429031602.2606654-1-jniet...@gmail.com/ The changes in v12 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/bpf: Remove bpf_jit_free() powerpc/bpf: Write protect JIT code Russell Currey (3): powerpc/mm: Implement set_memory() routines v12: - change_page_attr() back to taking an action value - disallow operating on huge pages powerpc/kprobes: Mark newly allocated probes as ROX v12: - Switch from __vmalloc_node_range() to module_alloc() powerpc: Set ARCH_HAS_STRICT_MODULE_RWX Some patches were dropped from this revision: powerpc: Always define MODULES_{VADDR,END} - Can use what Nick did with "Enable huge vmalloc mappings" arch/powerpc/Kconfig | 2 + 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 | 133 ++++++++++++++++++++++++++ arch/powerpc/mm/pgtable_32.c | 60 ++---------- arch/powerpc/net/bpf_jit_comp.c | 13 +-- 9 files changed, 205 insertions(+), 72 deletions(-) create mode 100644 arch/powerpc/include/asm/set_memory.h create mode 100644 arch/powerpc/mm/pageattr.c -- 2.25.1