Subject: [PATCH v9 0/7] Use per-CPU temporary mappings for patching on Radix MMU

From: Benjamin Gray <[email-masked]>
Date: Tue, 25 Oct 2022 15:44:02 +1100

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/[email-masked]/
v7: https://lore.kernel.org/all/[email-masked]/
v6: https://lore.kernel.org/all/[email-masked]/
v5: https://lore.kernel.org/all/[email-masked]/
v4: https://lore.kernel.org/all/[email-masked]/
v3: https://lore.kernel.org/all/[email-masked]/
v2: https://lore.kernel.org/all/[email-masked]/
v1: https://lore.kernel.org/all/[email-masked]/
RFC: https://lore.kernel.org/all/[email-masked]/
x86: https://lore.kernel.org/kernel-hardening/[email-masked]/

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