[PATCH v15 00/11] AMD broadcast TLB invalidation

Borislav Petkov posted 11 patches 9 months, 2 weeks ago
arch/x86/Kconfig.cpu                     |   4 +
arch/x86/include/asm/cpufeatures.h       |   1 +
arch/x86/include/asm/disabled-features.h |   8 +-
arch/x86/include/asm/mmu.h               |  12 +
arch/x86/include/asm/mmu_context.h       |  10 +-
arch/x86/include/asm/msr-index.h         |   2 +
arch/x86/include/asm/tlb.h               | 126 ++++++
arch/x86/include/asm/tlbflush.h          |  96 ++++-
arch/x86/kernel/cpu/amd.c                |  10 +
arch/x86/mm/tlb.c                        | 506 +++++++++++++++++++++--
tools/arch/x86/include/asm/msr-index.h   |   2 +
11 files changed, 730 insertions(+), 47 deletions(-)
[PATCH v15 00/11] AMD broadcast TLB invalidation
Posted by Borislav Petkov 9 months, 2 weeks ago
From: "Borislav Petkov (AMD)" <bp@alien8.de>

Hi all,

these are Rik's patches from here:

https://lore.kernel.org/r/20250226030129.530345-1-riel@surriel.com

with a bunch of dhansen's and mine edits ontop.

Some stuff is still in-flight but I'm sending the current state because
a bunch of things have changed and we'll need a good base to discuss the
remaining changes pending.
 
Preliminary build and boot tests look good but that doesn't say a whole lot.

Thx.

Rik van Riel (11):
  x86/mm: Consolidate full flush threshold decision
  x86/mm: Add INVLPGB feature and Kconfig entry
  x86/mm: Add INVLPGB support code
  x86/mm: Use INVLPGB for kernel TLB flushes
  x86/mm: Use broadcast TLB flushing in page reclaim
  x86/mm: Add global ASID allocation helper functions
  x86/mm: Handle global ASID context switch and TLB flush
  x86/mm: Add global ASID process exit helpers
  x86/mm: Enable broadcast TLB invalidation for multi-threaded processes
  x86/mm: Do targeted broadcast flushing from tlbbatch code
  x86/mm: Enable AMD translation cache extensions

 arch/x86/Kconfig.cpu                     |   4 +
 arch/x86/include/asm/cpufeatures.h       |   1 +
 arch/x86/include/asm/disabled-features.h |   8 +-
 arch/x86/include/asm/mmu.h               |  12 +
 arch/x86/include/asm/mmu_context.h       |  10 +-
 arch/x86/include/asm/msr-index.h         |   2 +
 arch/x86/include/asm/tlb.h               | 126 ++++++
 arch/x86/include/asm/tlbflush.h          |  96 ++++-
 arch/x86/kernel/cpu/amd.c                |  10 +
 arch/x86/mm/tlb.c                        | 506 +++++++++++++++++++++--
 tools/arch/x86/include/asm/msr-index.h   |   2 +
 11 files changed, 730 insertions(+), 47 deletions(-)

-- 
2.43.0