]> www.infradead.org Git - nvme.git/commitdiff
mm: implement update_mmu_tlb() using update_mmu_tlb_range()
authorBang Li <libang.li@antgroup.com>
Wed, 22 May 2024 06:12:03 +0000 (14:12 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Thu, 4 Jul 2024 02:29:57 +0000 (19:29 -0700)
Let's make update_mmu_tlb() simply a generic wrapper around
update_mmu_tlb_range().  Only the latter can now be overridden by the
architecture.  We can now remove __HAVE_ARCH_UPDATE_MMU_TLB as well.

Link: https://lkml.kernel.org/r/20240522061204.117421-3-libang.li@antgroup.com
Signed-off-by: Bang Li <libang.li@antgroup.com>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Chris Zankel <chris@zankel.net>
Cc: Huacai Chen <chenhuacai@kernel.org>
Cc: Lance Yang <ioworker0@gmail.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
arch/loongarch/include/asm/pgtable.h
arch/mips/include/asm/pgtable.h
arch/riscv/include/asm/pgtable.h
arch/xtensa/include/asm/pgtable.h
arch/xtensa/mm/tlb.c
include/linux/pgtable.h

index 5ccc2a3a6f7af6a26945003f2fa34bd42a13b96d..161dd6e10479e536b2ef76a31c3152fc6f95cb84 100644 (file)
@@ -467,8 +467,6 @@ static inline void update_mmu_cache_range(struct vm_fault *vmf,
 #define update_mmu_cache(vma, addr, ptep) \
        update_mmu_cache_range(NULL, vma, addr, ptep, 1)
 
-#define __HAVE_ARCH_UPDATE_MMU_TLB
-#define update_mmu_tlb update_mmu_cache
 #define update_mmu_tlb_range(vma, addr, ptep, nr) \
        update_mmu_cache_range(NULL, vma, addr, ptep, nr)
 
index 0891ad7d43b6adaf22e63296e44d1e6d8dd64353..c29a551eb0ca8d01521e4b207ce38efe35962b62 100644 (file)
@@ -594,8 +594,6 @@ static inline void update_mmu_cache_range(struct vm_fault *vmf,
 #define update_mmu_cache(vma, address, ptep) \
        update_mmu_cache_range(NULL, vma, address, ptep, 1)
 
-#define        __HAVE_ARCH_UPDATE_MMU_TLB
-#define update_mmu_tlb update_mmu_cache
 #define update_mmu_tlb_range(vma, address, ptep, nr) \
        update_mmu_cache_range(NULL, vma, address, ptep, nr)
 
index 0c50b51f68c49fd69baafd55a74bc353610c5a56..ebfe8faafb79876b969f2c668512e87793345384 100644 (file)
@@ -489,8 +489,6 @@ static inline void update_mmu_cache_range(struct vm_fault *vmf,
 #define update_mmu_cache(vma, addr, ptep) \
        update_mmu_cache_range(NULL, vma, addr, ptep, 1)
 
-#define __HAVE_ARCH_UPDATE_MMU_TLB
-#define update_mmu_tlb update_mmu_cache
 #define update_mmu_tlb_range(vma, addr, ptep, nr) \
        update_mmu_cache_range(NULL, vma, addr, ptep, nr)
 
index 436158bd9030a2574cd00ff9229e0848eeece806..1647a7cc3fbf6760e4187858d3a20f6ccf9773a3 100644 (file)
@@ -410,9 +410,6 @@ void update_mmu_cache_range(struct vm_fault *vmf, struct vm_area_struct *vma,
 
 typedef pte_t *pte_addr_t;
 
-void update_mmu_tlb(struct vm_area_struct *vma,
-                   unsigned long address, pte_t *ptep);
-#define __HAVE_ARCH_UPDATE_MMU_TLB
 void update_mmu_tlb_range(struct vm_area_struct *vma,
                unsigned long address, pte_t *ptep, unsigned int nr);
 #define update_mmu_tlb_range update_mmu_tlb_range
index 05efba86b870620450ff9667476d9e8679add5da..0a1a815dc796a22b3da7007970f635c5217275c2 100644 (file)
@@ -163,12 +163,6 @@ void local_flush_tlb_kernel_range(unsigned long start, unsigned long end)
        }
 }
 
-void update_mmu_tlb(struct vm_area_struct *vma,
-                   unsigned long address, pte_t *ptep)
-{
-       local_flush_tlb_page(vma, address);
-}
-
 void update_mmu_tlb_range(struct vm_area_struct *vma,
                        unsigned long address, pte_t *ptep, unsigned int nr)
 {
index 17d1caee39abafca3961b408569252e063dc5b9a..117b807e3f894d665d1f2f315e85698def301518 100644 (file)
@@ -736,13 +736,11 @@ static inline void update_mmu_tlb_range(struct vm_area_struct *vma,
 }
 #endif
 
-#ifndef __HAVE_ARCH_UPDATE_MMU_TLB
 static inline void update_mmu_tlb(struct vm_area_struct *vma,
                                unsigned long address, pte_t *ptep)
 {
+       update_mmu_tlb_range(vma, address, ptep, 1);
 }
-#define __HAVE_ARCH_UPDATE_MMU_TLB
-#endif
 
 /*
  * Some architectures may be able to avoid expensive synchronization