| /linux/arch/s390/mm/ |
| H A D | gmap_helpers.c | 46 void gmap_helper_zap_one_page(struct mm_struct *mm, unsigned long vmaddr) in gmap_helper_zap_one_page() argument 55 vma = vma_lookup(mm, vmaddr); in gmap_helper_zap_one_page() 60 ptep = get_locked_pte(mm, vmaddr, &ptl); in gmap_helper_zap_one_page() 65 pte_clear(mm, vmaddr, ptep); in gmap_helper_zap_one_page() 81 void gmap_helper_discard(struct mm_struct *mm, unsigned long vmaddr, unsigned long end) in gmap_helper_discard() argument 87 while (vmaddr < end) { in gmap_helper_discard() 88 vma = find_vma_intersection(mm, vmaddr, end); in gmap_helper_discard() 92 zap_page_range_single(vma, vmaddr, min(end, vma->vm_end) - vmaddr, NULL); in gmap_helper_discard() 93 vmaddr = vma->vm_end; in gmap_helper_discard() 114 void gmap_helper_try_set_pte_unused(struct mm_struct *mm, unsigned long vmaddr) in gmap_helper_try_set_pte_unused() argument [all …]
|
| /linux/arch/powerpc/include/asm/nohash/ |
| H A D | tlbflush.h | 43 static inline void local_flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in local_flush_tlb_page() argument 45 asm volatile ("tlbie %0; sync" : : "r" (vmaddr) : "memory"); in local_flush_tlb_page() 49 unsigned long vmaddr, int psize) in local_flush_tlb_page_psize() argument 51 asm volatile ("tlbie %0; sync" : : "r" (vmaddr) : "memory"); in local_flush_tlb_page_psize() 66 extern void local_flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 67 void local_flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr, int psize); 69 extern void __local_flush_tlb_page(struct mm_struct *mm, unsigned long vmaddr, 75 extern void flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 76 extern void __flush_tlb_page(struct mm_struct *mm, unsigned long vmaddr,
|
| /linux/arch/powerpc/include/asm/book3s/32/ |
| H A D | tlbflush.h | 12 void hash__flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 58 static inline void flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in flush_tlb_page() argument 61 hash__flush_tlb_page(vma, vmaddr); in flush_tlb_page() 63 _tlbie(vmaddr); in flush_tlb_page() 78 unsigned long vmaddr) in local_flush_tlb_page() argument 80 flush_tlb_page(vma, vmaddr); in local_flush_tlb_page() 84 unsigned long vmaddr, int psize) in local_flush_tlb_page_psize() argument 86 flush_range(mm, vmaddr, vmaddr); in local_flush_tlb_page_psize()
|
| /linux/arch/powerpc/mm/nohash/ |
| H A D | tlb.c | 140 void __local_flush_tlb_page(struct mm_struct *mm, unsigned long vmaddr, in __local_flush_tlb_page() argument 148 _tlbil_va(vmaddr, pid, tsize, ind); in __local_flush_tlb_page() 152 void local_flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in local_flush_tlb_page() argument 154 __local_flush_tlb_page(vma ? vma->vm_mm : NULL, vmaddr, in local_flush_tlb_page() 160 unsigned long vmaddr, int psize) in local_flush_tlb_page_psize() argument 162 __local_flush_tlb_page(mm, vmaddr, mmu_get_tsize(psize), 0); in local_flush_tlb_page_psize() 233 void __flush_tlb_page(struct mm_struct *mm, unsigned long vmaddr, in __flush_tlb_page() argument 257 _tlbivax_bcast(vmaddr, pid, tsize, ind); in __flush_tlb_page() 264 .addr = vmaddr, in __flush_tlb_page() 273 _tlbil_va(vmaddr, pid, tsize, ind); in __flush_tlb_page() [all …]
|
| H A D | e500_hugetlbpage.c | 187 void flush_hugetlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in flush_hugetlb_page() argument 192 __flush_tlb_page(vma->vm_mm, vmaddr, tsize, 0); in flush_hugetlb_page()
|
| /linux/arch/powerpc/include/asm/book3s/64/ |
| H A D | tlbflush.h | 92 unsigned long vmaddr) in local_flush_tlb_page() argument 95 radix__local_flush_tlb_page(vma, vmaddr); in local_flush_tlb_page() 99 unsigned long vmaddr, int psize) in local_flush_tlb_page_psize() argument 102 radix__local_flush_tlb_page_psize(mm, vmaddr, psize); in local_flush_tlb_page_psize() 121 unsigned long vmaddr) in flush_tlb_page() argument 124 radix__flush_tlb_page(vma, vmaddr); in flush_tlb_page()
|
| H A D | hugetlb.h | 12 void radix__flush_hugetlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 13 void radix__local_flush_hugetlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 62 unsigned long vmaddr) in flush_hugetlb_page() argument 65 return radix__flush_hugetlb_page(vma, vmaddr); in flush_hugetlb_page() 68 void flush_hugetlb_page(struct vm_area_struct *vma, unsigned long vmaddr);
|
| H A D | tlbflush-radix.h | 79 extern void radix__local_flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 80 extern void radix__local_flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr, 86 extern void radix__flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 87 extern void radix__flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr,
|
| /linux/arch/mips/include/asm/ |
| H A D | tlbflush.h | 41 #define flush_tlb_range(vma, vmaddr, end) local_flush_tlb_range(vma, vmaddr, end) argument 42 #define flush_tlb_kernel_range(vmaddr,end) \ argument 43 local_flush_tlb_kernel_range(vmaddr, end)
|
| H A D | cacheflush.h | 82 struct page *page, unsigned long vmaddr) in flush_anon_page() argument 85 __flush_anon_page(page, vmaddr); in flush_anon_page()
|
| /linux/arch/loongarch/include/asm/ |
| H A D | tlbflush.h | 41 #define flush_tlb_range(vma, vmaddr, end) local_flush_tlb_range(vma, vmaddr, end) argument 42 #define flush_tlb_kernel_range(vmaddr, end) local_flush_tlb_kernel_range(vmaddr, end) argument
|
| /linux/arch/powerpc/mm/book3s64/ |
| H A D | radix_hugetlbpage.c | 10 void radix__flush_hugetlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in radix__flush_hugetlb_page() argument 16 radix__flush_tlb_page_psize(vma->vm_mm, vmaddr, psize); in radix__flush_hugetlb_page() 19 void radix__local_flush_hugetlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in radix__local_flush_hugetlb_page() argument 25 radix__local_flush_tlb_page_psize(vma->vm_mm, vmaddr, psize); in radix__local_flush_hugetlb_page()
|
| H A D | radix_tlb.c | 615 void radix__local_flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr, in radix__local_flush_tlb_page_psize() argument 624 _tlbiel_va(vmaddr, pid, psize, RIC_FLUSH_TLB); in radix__local_flush_tlb_page_psize() 628 void radix__local_flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in radix__local_flush_tlb_page() argument 633 return radix__local_flush_hugetlb_page(vma, vmaddr); in radix__local_flush_tlb_page() 635 radix__local_flush_tlb_page_psize(vma->vm_mm, vmaddr, mmu_virtual_psize); in radix__local_flush_tlb_page() 914 void radix__flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr, in radix__flush_tlb_page_psize() argument 928 _tlbiel_va(vmaddr, pid, psize, RIC_FLUSH_TLB); in radix__flush_tlb_page_psize() 940 pg_sizes, vmaddr, in radix__flush_tlb_page_psize() 941 vmaddr + size); in radix__flush_tlb_page_psize() 943 _tlbie_va(vmaddr, pid, psize, RIC_FLUSH_TLB); in radix__flush_tlb_page_psize() [all …]
|
| /linux/arch/powerpc/mm/book3s32/ |
| H A D | tlb.c | 97 void hash__flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr) in hash__flush_tlb_page() argument 102 mm = (vmaddr < TASK_SIZE)? vma->vm_mm: &init_mm; in hash__flush_tlb_page() 103 pmd = pmd_off(mm, vmaddr); in hash__flush_tlb_page() 105 flush_hash_pages(mm->context.id, vmaddr, pmd_val(*pmd), 1); in hash__flush_tlb_page()
|
| /linux/arch/s390/include/asm/ |
| H A D | gmap_helpers.h | 11 void gmap_helper_zap_one_page(struct mm_struct *mm, unsigned long vmaddr); 12 void gmap_helper_discard(struct mm_struct *mm, unsigned long vmaddr, unsigned long end); 14 void gmap_helper_try_set_pte_unused(struct mm_struct *mm, unsigned long vmaddr);
|
| /linux/arch/parisc/kernel/ |
| H A D | cache.c | 331 __flush_cache_page(struct vm_area_struct *vma, unsigned long vmaddr, in __flush_cache_page() argument 346 flush_tlb_page(vma, vmaddr); in __flush_cache_page() 349 flush_dcache_page_asm(physaddr, vmaddr); in __flush_cache_page() 351 flush_icache_page_asm(physaddr, vmaddr); in __flush_cache_page() 624 unsigned long vmaddr) in flush_cache_page_if_present() argument 630 ptep = get_ptep(vma->vm_mm, vmaddr); in flush_cache_page_if_present() 637 __flush_cache_page(vma, vmaddr, PFN_PHYS(pte_pfn(pte))); in flush_cache_page_if_present() 640 unsigned long physaddr = get_upa(mm, vmaddr); in flush_cache_page_if_present() 643 __flush_cache_page(vma, vmaddr, PAGE_ALIGN_DOWN(physaddr)); in flush_cache_page_if_present() 771 void flush_cache_page(struct vm_area_struct *vma, unsigned long vmaddr, unsigned long pfn) in flush_cache_page() argument [all …]
|
| /linux/arch/microblaze/include/asm/ |
| H A D | tlbflush.h | 28 unsigned long vmaddr) in local_flush_tlb_page() argument 29 { __tlbie(vmaddr); } in local_flush_tlb_page()
|
| /linux/arch/mips/mm/ |
| H A D | cache.c | 127 void __flush_anon_page(struct page *page, unsigned long vmaddr) in __flush_anon_page() argument 132 if (pages_do_alias(addr, vmaddr)) { in __flush_anon_page() 136 kaddr = kmap_coherent(page, vmaddr); in __flush_anon_page()
|
| /linux/arch/arm/mm/ |
| H A D | flush.c | 381 void __flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vmaddr); 382 void __flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vmaddr) in __flush_anon_page() argument 395 flush_cache_page(vma, vmaddr, pfn); in __flush_anon_page() 401 flush_pfn_alias(pfn, vmaddr); in __flush_anon_page()
|
| /linux/arch/powerpc/include/asm/nohash/32/ |
| H A D | hugetlb-8xx.h | 8 unsigned long vmaddr) in flush_hugetlb_page() argument 10 flush_tlb_page(vma, vmaddr); in flush_hugetlb_page()
|
| /linux/arch/parisc/include/asm/ |
| H A D | cacheflush.h | 74 void flush_cache_page(struct vm_area_struct *vma, unsigned long vmaddr, 80 void flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vmaddr);
|
| /linux/arch/sh/include/asm/ |
| H A D | cacheflush.h | 68 struct page *page, unsigned long vmaddr) in flush_anon_page() argument 71 __flush_anon_page(page, vmaddr); in flush_anon_page()
|
| /linux/arch/xtensa/include/asm/ |
| H A D | tlbflush.h | 55 #define flush_tlb_range(vma, vmaddr, end) local_flush_tlb_range(vma, vmaddr, \ argument
|
| /linux/arch/sh/mm/ |
| H A D | cache.c | 158 void __flush_anon_page(struct page *page, unsigned long vmaddr) in __flush_anon_page() argument 163 if (pages_do_alias(addr, vmaddr)) { in __flush_anon_page() 168 kaddr = kmap_coherent(page, vmaddr); in __flush_anon_page()
|
| /linux/arch/arm/include/asm/ |
| H A D | cacheflush.h | 313 struct page *page, unsigned long vmaddr) in flush_anon_page() argument 318 __flush_anon_page(vma, page, vmaddr); in flush_anon_page()
|