[PATCH v3 0/3] powerpc/mm: Fix kernel protection and implement CONFIG_DEBUG_RODATA on PPC32

From: Christophe Leroy
Date: Mon Apr 24 2017 - 10:26:20 EST


This patch set implements CONFIG_DEBUG_RODATA on Powerpc32
after fixing a few issues related to kernel code page protection.

Changes in v2:
Instead of making the entire kernel RW to patch code in ftrace,
we now only change the rights on the page to be modified

Changes in v3:
Changing the rights is performed in patch_instruction() instead of
being done only in ftrace, so that other functionnalities like
jump_label also works.

Christophe Leroy (3):
powerpc/mm: Ensure change_page_attr() doesn't invalidate pinned TLBs
powerpc/mm: Fix kernel RAM protection after freeing unused memory on
PPC32
powerpc/mm: Implement CONFIG_DEBUG_RODATA on PPC32

arch/powerpc/Kconfig.debug | 11 ++++++
arch/powerpc/include/asm/pgtable.h | 8 +++++
arch/powerpc/lib/code-patching.c | 9 +++++
arch/powerpc/mm/init_32.c | 3 +-
arch/powerpc/mm/mem.c | 1 +
arch/powerpc/mm/mmu_decl.h | 3 ++
arch/powerpc/mm/pgtable_32.c | 69 ++++++++++++++++++++++++++++++++++----
7 files changed, 96 insertions(+), 8 deletions(-)

--
2.12.0