[PATCH v3 00/23] Use asm-generic for mmu_context no-op functions

Nicholas Piggin
2020-09-01T14:47:18Z

It would be nice to be able to modify mmu_context functions or add a
hook without updating all architectures, many of which will be no-ops.

The motivation for this series is a change to lazy mmu handling, but
this series stands on its own as a good cleanup whether or not we end
up making that change.

Since v2:
- Fixed build failure on arm64 (fingers crossed), did more cross
compiling.
- Accounted for feedback and added acks (thanks all).

Arnd, most of the main archs have acks, and I asked for ack/nack
from ones which are missing. We could give those a bit more time
then merge.

Thanks,
Nick

Nicholas Piggin (23):
asm-generic: add generic MMU versions of mmu context functions
alpha: use asm-generic/mmu_context.h for no-op implementations
arc: use asm-generic/mmu_context.h for no-op implementations
arm: use asm-generic/mmu_context.h for no-op implementations
arm64: use asm-generic/mmu_context.h for no-op implementations
csky: use asm-generic/mmu_context.h for no-op implementations
hexagon: use asm-generic/mmu_context.h for no-op implementations
ia64: use asm-generic/mmu_context.h for no-op implementations
m68k: use asm-generic/mmu_context.h for no-op implementations
microblaze: use asm-generic/mmu_context.h for no-op implementations
mips: use asm-generic/mmu_context.h for no-op implementations
nds32: use asm-generic/mmu_context.h for no-op implementations
nios2: use asm-generic/mmu_context.h for no-op implementations
openrisc: use asm-generic/mmu_context.h for no-op implementations
parisc: use asm-generic/mmu_context.h for no-op implementations
powerpc: use asm-generic/mmu_context.h for no-op implementations
riscv: use asm-generic/mmu_context.h for no-op implementations
s390: use asm-generic/mmu_context.h for no-op implementations
sh: use asm-generic/mmu_context.h for no-op implementations
sparc: use asm-generic/mmu_context.h for no-op implementations
um: use asm-generic/mmu_context.h for no-op implementations
x86: use asm-generic/mmu_context.h for no-op implementations
xtensa: use asm-generic/mmu_context.h for no-op implementations

arch/alpha/include/asm/mmu_context.h | 12 ++--
arch/arc/include/asm/mmu_context.h | 17 +++---
arch/arm/include/asm/mmu_context.h | 26 +--------
arch/arm64/include/asm/mmu_context.h | 7 +--
arch/c6x/include/asm/mmu_context.h | 6 ++
arch/csky/include/asm/mmu_context.h | 8 +--
arch/hexagon/include/asm/mmu_context.h | 33 ++---------
arch/ia64/include/asm/mmu_context.h | 17 ++----
arch/m68k/include/asm/mmu_context.h | 37 +++----------
arch/microblaze/include/asm/mmu_context.h | 2 +-
arch/microblaze/include/asm/mmu_context_mm.h | 8 +--
arch/microblaze/include/asm/processor.h | 3 -
arch/mips/include/asm/mmu_context.h | 11 ++--
arch/nds32/include/asm/mmu_context.h | 10 +---
arch/nios2/include/asm/mmu_context.h | 21 ++-----
arch/openrisc/include/asm/mmu_context.h | 8 +--
arch/parisc/include/asm/mmu_context.h | 12 ++--
arch/powerpc/include/asm/mmu_context.h | 13 +++--
arch/riscv/include/asm/mmu_context.h | 22 +-------
arch/s390/include/asm/mmu_context.h | 9 ++-
arch/sh/include/asm/mmu_context.h | 7 +--
arch/sh/include/asm/mmu_context_32.h | 9 ---
arch/sparc/include/asm/mmu_context_32.h | 10 ++--
arch/sparc/include/asm/mmu_context_64.h | 10 ++--
arch/um/include/asm/mmu_context.h | 12 ++--
arch/x86/include/asm/mmu_context.h | 6 ++
arch/xtensa/include/asm/mmu_context.h | 11 +---
arch/xtensa/include/asm/nommu_context.h | 26 +--------
include/asm-generic/mmu_context.h | 58 +++++++++++++++-----
include/asm-generic/nommu_context.h | 19 +++++++
30 files changed, 174 insertions(+), 276 deletions(-)
create mode 100644 arch/c6x/include/asm/mmu_context.h
create mode 100644 include/asm-generic/nommu_context.h

--
2.23.0