[PATCH 00/13] Clean up pmd_get_atomic() and i386-PAE

From: Peter Zijlstra
Date: Sat Oct 22 2022 - 07:49:16 EST


Hi,

At long *long* last a respin of the patches that clean up pmd_get_atomic() and
i386-PAE. I'd nearly forgotten why I did this, but the old posting gave clue
that patch #7 was the whole purpose of me doing these patches.

Having carried these patches for at least 2 years, they recently hit a rebase
bump against the mg-lru patches, which is what prompted this repost.

Linus' comment about try_cmpxchg64() (and Uros before him) made me redo those
patches (see patch #10) which resulted in pxx_xchg64(). This in turn led to
killing off set_64bit().

The robot doesn't hate on these patches and they boot in kvm (because who still
has i386 hardware).

Patches also available at:

git://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git x86/mm.pae

---
arch/mips/Kconfig | 2 +-
arch/sh/Kconfig | 2 +-
arch/sh/include/asm/pgtable-3level.h | 10 +-
arch/um/include/asm/pgtable-3level.h | 8 --
arch/x86/Kconfig | 2 +-
arch/x86/include/asm/cmpxchg_32.h | 28 -----
arch/x86/include/asm/cmpxchg_64.h | 5 -
arch/x86/include/asm/pgtable-3level.h | 171 ++++++----------------------
arch/x86/include/asm/pgtable-3level_types.h | 7 ++
arch/x86/include/asm/pgtable_64_types.h | 1 +
arch/x86/include/asm/pgtable_types.h | 4 +-
drivers/iommu/intel/irq_remapping.c | 10 +-
include/linux/pgtable.h | 71 +++++++-----
kernel/events/core.c | 2 +-
mm/Kconfig | 2 +-
mm/gup.c | 2 +-
mm/hmm.c | 3 +-
mm/khugepaged.c | 2 +-
mm/mapping_dirty_helpers.c | 2 +-
mm/mprotect.c | 2 +-
mm/userfaultfd.c | 2 +-
mm/vmscan.c | 5 +-
22 files changed, 110 insertions(+), 233 deletions(-)