[PATCH v3 0/3] Add update_mmu_tlb_range() to simplify code

From: Bang Li
Date: Sat May 18 2024 - 03:52:19 EST


This series of commits mainly adds the update_mmu_tlb_range() to
batch update tlb in an address range and refactor the update_mmu_tlb().

After the commit 19eaf44954df ("mm: thp: support allocation of anonymous
multi-size THP"), We may need to batch update tlb of a certain address
range by calling update_mmu_tlb() in a loop. Using the
update_mmu_tlb_range(), we can simplify the code and possibly reduce the
execution of some unnecessary code in some architectures.

Thanks,
Bang

Changes since v2 [2]:
- Use generic architecture to implement update_mmu_tlb() (per Ryan)

Changes since v1 [1]:
- Add __HAVE_ARCH_UPDATE_MMU_TLB_RANGE macro (per Lance Yang)

[1] https://lore.kernel.org/linux-mm/20240429103346.59115-1-libang.li@xxxxxxxxxxxx/
[2] https://lore.kernel.org/linux-mm/20240506155120.83105-1-libang.li@xxxxxxxxxxxx/

Bang Li (3):
mm: Add update_mmu_tlb_range()
mm: Refactor update_mmu_tlb()
mm: Use update_mmu_tlb_range() to simplify code

arch/loongarch/include/asm/pgtable.h | 4 ++--
arch/mips/include/asm/pgtable.h | 4 ++--
arch/riscv/include/asm/pgtable.h | 4 ++--
arch/xtensa/include/asm/pgtable.h | 6 +++---
arch/xtensa/mm/tlb.c | 6 +++---
include/linux/pgtable.h | 11 ++++++++---
mm/memory.c | 4 +---
7 files changed, 21 insertions(+), 18 deletions(-)

--
2.19.1.6.gb485710b