[PATCH v9 0/7] Use per-CPU temporary mappings for patching on Radix MMU
Benjamin Gray
bgray at linux.ibm.com
Tue Oct 25 15:44:02 AEDT 2022
This is a revision of Chris and Jordan's series to introduce a per-cpu temporary
mm to be used for patching with strict rwx on radix mmus.
v9: * Fixed patch series name to include "on Radix MMU" again
* Renamed breakpoint functions
* Introduce patch to gracefully return when patching not possible
* Make book3s/32/tlbflush.h TLB page flush implementation a warning
* Removed temp_mm_state
* Consolidate patching context into single struct shared by both paths
Previous versions:
v8: https://lore.kernel.org/all/20221021052238.580986-1-bgray@linux.ibm.com/
v7: https://lore.kernel.org/all/20211110003717.1150965-1-jniethe5@gmail.com/
v6: https://lore.kernel.org/all/20210911022904.30962-1-cmr@bluescreens.de/
v5: https://lore.kernel.org/all/20210713053113.4632-1-cmr@linux.ibm.com/
v4: https://lore.kernel.org/all/20210429072057.8870-1-cmr@bluescreens.de/
v3: https://lore.kernel.org/all/20200827052659.24922-1-cmr@codefail.de/
v2: https://lore.kernel.org/all/20200709040316.12789-1-cmr@informatik.wtf/
v1: https://lore.kernel.org/all/20200603051912.23296-1-cmr@informatik.wtf/
RFC: https://lore.kernel.org/all/20200323045205.20314-1-cmr@informatik.wtf/
x86: https://lore.kernel.org/kernel-hardening/20190426232303.28381-1-nadav.amit@gmail.com/
Benjamin Gray (7):
powerpc: Allow clearing and restoring registers independent of saved
breakpoint state
powerpc/code-patching: Handle RWX patching initialisation error
powerpc/code-patching: Use WARN_ON and fix check in poking_init
powerpc/code-patching: Verify instruction patch succeeded
powerpc/tlb: Add local flush for page given mm_struct and psize
powerpc/code-patching: Use temporary mm for Radix MMU
powerpc/code-patching: Consolidate and cache per-cpu patching context
arch/powerpc/include/asm/book3s/32/tlbflush.h | 9 +
.../include/asm/book3s/64/tlbflush-hash.h | 5 +
arch/powerpc/include/asm/book3s/64/tlbflush.h | 8 +
arch/powerpc/include/asm/debug.h | 2 +
arch/powerpc/include/asm/nohash/tlbflush.h | 8 +
arch/powerpc/kernel/process.c | 38 ++-
arch/powerpc/lib/code-patching.c | 252 +++++++++++++++++-
7 files changed, 305 insertions(+), 17 deletions(-)
base-commit: 9abf2313adc1ca1b6180c508c25f22f9395cc780
--
2.37.3
More information about the Linuxppc-dev
mailing list