/kernel/linux/linux-6.6/include/asm-generic/ |
H A D | tlb.h | 2 /* include/asm-generic/tlb.h 204 extern void tlb_remove_table(struct mmu_gather *tlb, void *table); 212 #define tlb_remove_table(tlb, page) tlb_remove_page((tlb), (page)) 263 extern bool __tlb_remove_page_size(struct mmu_gather *tlb, 272 #define tlb_delay_rmap(tlb) (((tlb)->delayed_rmap = 1), true) 273 extern void tlb_flush_rmaps(struct mmu_gather *tlb, struct vm_area_struct *vma); 286 #define tlb_delay_rmap(tlb) (false) 287 static inline void tlb_flush_rmaps(struct mmu_gather *tlb, struc argument 355 __tlb_adjust_range(struct mmu_gather *tlb, unsigned long address, unsigned int range_size) __tlb_adjust_range() argument 363 __tlb_reset_range(struct mmu_gather *tlb) __tlb_reset_range() argument 397 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument 411 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument 430 tlb_update_vma_flags(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_update_vma_flags() argument 448 tlb_flush_mmu_tlbonly(struct mmu_gather *tlb) tlb_flush_mmu_tlbonly() argument 462 tlb_remove_page_size(struct mmu_gather *tlb, struct page *page, int page_size) tlb_remove_page_size() argument 469 __tlb_remove_page(struct mmu_gather *tlb, struct page *page, unsigned int flags) __tlb_remove_page() argument 478 tlb_remove_page(struct mmu_gather *tlb, struct page *page) tlb_remove_page() argument 483 tlb_remove_ptdesc(struct mmu_gather *tlb, void *pt) tlb_remove_ptdesc() argument 489 tlb_remove_page_ptdesc(struct mmu_gather *tlb, struct ptdesc *pt) tlb_remove_page_ptdesc() argument 494 tlb_change_page_size(struct mmu_gather *tlb, unsigned int page_size) tlb_change_page_size() argument 507 tlb_get_unmap_shift(struct mmu_gather *tlb) tlb_get_unmap_shift() argument 521 tlb_get_unmap_size(struct mmu_gather *tlb) tlb_get_unmap_size() argument 531 tlb_start_vma(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_start_vma() argument 542 tlb_end_vma(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_end_vma() argument 566 tlb_flush_pte_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_pte_range() argument 573 tlb_flush_pmd_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_pmd_range() argument 580 tlb_flush_pud_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_pud_range() argument 587 tlb_flush_p4d_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_p4d_range() argument [all...] |
/kernel/linux/linux-5.10/include/asm-generic/ |
H A D | tlb.h | 2 /* include/asm-generic/tlb.h 187 extern void tlb_remove_table(struct mmu_gather *tlb, void *table); 195 #define tlb_remove_table(tlb, page) tlb_remove_page((tlb), (page)) 246 extern bool __tlb_remove_page_size(struct mmu_gather *tlb, struct page *page, 271 * requires a complete flush of the tlb 307 void tlb_flush_mmu(struct mmu_gather *tlb); 309 static inline void __tlb_adjust_range(struct mmu_gather *tlb, in __tlb_adjust_range() argument 313 tlb->start = min(tlb in __tlb_adjust_range() 317 __tlb_reset_range(struct mmu_gather *tlb) __tlb_reset_range() argument 351 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument 358 tlb_update_vma_flags(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_update_vma_flags() argument 361 tlb_end_vma(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_end_vma() argument 376 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument 392 tlb_update_vma_flags(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_update_vma_flags() argument 412 tlb_update_vma_flags(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_update_vma_flags() argument 418 tlb_flush_mmu_tlbonly(struct mmu_gather *tlb) tlb_flush_mmu_tlbonly() argument 433 tlb_remove_page_size(struct mmu_gather *tlb, struct page *page, int page_size) tlb_remove_page_size() argument 440 __tlb_remove_page(struct mmu_gather *tlb, struct page *page) __tlb_remove_page() argument 449 tlb_remove_page(struct mmu_gather *tlb, struct page *page) tlb_remove_page() argument 454 tlb_change_page_size(struct mmu_gather *tlb, unsigned int page_size) tlb_change_page_size() argument 467 tlb_get_unmap_shift(struct mmu_gather *tlb) tlb_get_unmap_shift() argument 481 tlb_get_unmap_size(struct mmu_gather *tlb) tlb_get_unmap_size() argument 492 tlb_start_vma(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_start_vma() argument 503 tlb_end_vma(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_end_vma() argument 522 tlb_flush_pte_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_pte_range() argument 529 tlb_flush_pmd_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_pmd_range() argument 536 tlb_flush_pud_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_pud_range() argument 543 tlb_flush_p4d_range(struct mmu_gather *tlb, unsigned long address, unsigned long size) tlb_flush_p4d_range() argument [all...] |
/kernel/linux/linux-6.6/mm/ |
H A D | mmu_gather.c | 14 #include <asm/tlb.h> 18 static bool tlb_next_batch(struct mmu_gather *tlb) in tlb_next_batch() argument 23 if (tlb->delayed_rmap && tlb->active != &tlb->local) in tlb_next_batch() 26 batch = tlb->active; in tlb_next_batch() 28 tlb->active = batch->next; in tlb_next_batch() 32 if (tlb->batch_count == MAX_GATHER_BATCH_COUNT) in tlb_next_batch() 39 tlb->batch_count++; in tlb_next_batch() 44 tlb in tlb_next_batch() 73 tlb_flush_rmaps(struct mmu_gather *tlb, struct vm_area_struct *vma) tlb_flush_rmaps() argument 85 tlb_batch_pages_flush(struct mmu_gather *tlb) tlb_batch_pages_flush() argument 108 tlb_batch_list_free(struct mmu_gather *tlb) tlb_batch_list_free() argument 119 __tlb_remove_page_size(struct mmu_gather *tlb, struct encoded_page *page, int page_size) __tlb_remove_page_size() argument 229 tlb_table_invalidate(struct mmu_gather *tlb) tlb_table_invalidate() argument 247 tlb_table_flush(struct mmu_gather *tlb) tlb_table_flush() argument 258 tlb_remove_table(struct mmu_gather *tlb, void *table) tlb_remove_table() argument 277 tlb_table_init(struct mmu_gather *tlb) tlb_table_init() argument 284 tlb_table_flush(struct mmu_gather *tlb) tlb_table_flush() argument 285 tlb_table_init(struct mmu_gather *tlb) tlb_table_init() argument 289 tlb_flush_mmu_free(struct mmu_gather *tlb) tlb_flush_mmu_free() argument 297 tlb_flush_mmu(struct mmu_gather *tlb) tlb_flush_mmu() argument 303 __tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm, bool fullmm) __tlb_gather_mmu() argument 336 tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm) tlb_gather_mmu() argument 352 tlb_gather_mmu_fullmm(struct mmu_gather *tlb, struct mm_struct *mm) tlb_gather_mmu_fullmm() argument 364 tlb_finish_mmu(struct mmu_gather *tlb) tlb_finish_mmu() argument [all...] |
/kernel/linux/linux-5.10/mm/ |
H A D | mmu_gather.c | 12 #include <asm/tlb.h> 16 static bool tlb_next_batch(struct mmu_gather *tlb) in tlb_next_batch() argument 20 batch = tlb->active; in tlb_next_batch() 22 tlb->active = batch->next; in tlb_next_batch() 26 if (tlb->batch_count == MAX_GATHER_BATCH_COUNT) in tlb_next_batch() 33 tlb->batch_count++; in tlb_next_batch() 38 tlb->active->next = batch; in tlb_next_batch() 39 tlb->active = batch; in tlb_next_batch() 44 static void tlb_batch_pages_flush(struct mmu_gather *tlb) in tlb_batch_pages_flush() argument 48 for (batch = &tlb in tlb_batch_pages_flush() 55 tlb_batch_list_free(struct mmu_gather *tlb) tlb_batch_list_free() argument 66 __tlb_remove_page_size(struct mmu_gather *tlb, struct page *page, int page_size) __tlb_remove_page_size() argument 176 tlb_table_invalidate(struct mmu_gather *tlb) tlb_table_invalidate() argument 194 tlb_table_flush(struct mmu_gather *tlb) tlb_table_flush() argument 205 tlb_remove_table(struct mmu_gather *tlb, void *table) tlb_remove_table() argument 224 tlb_table_init(struct mmu_gather *tlb) tlb_table_init() argument 231 tlb_table_flush(struct mmu_gather *tlb) tlb_table_flush() argument 232 tlb_table_init(struct mmu_gather *tlb) tlb_table_init() argument 236 tlb_flush_mmu_free(struct mmu_gather *tlb) tlb_flush_mmu_free() argument 244 tlb_flush_mmu(struct mmu_gather *tlb) tlb_flush_mmu() argument 262 tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm, unsigned long start, unsigned long end) tlb_gather_mmu() argument 297 tlb_finish_mmu(struct mmu_gather *tlb, unsigned long start, unsigned long end) tlb_finish_mmu() argument [all...] |
/kernel/linux/linux-5.10/arch/s390/include/asm/ |
H A D | tlb.h | 26 static inline void tlb_flush(struct mmu_gather *tlb); 27 static inline bool __tlb_remove_page_size(struct mmu_gather *tlb, 30 #define tlb_start_vma(tlb, vma) do { } while (0) 31 #define tlb_end_vma(tlb, vma) do { } while (0) 40 #include <asm-generic/tlb.h> 44 * tlb_ptep_clear_flush. In both flush modes the tlb for a page cache page 47 static inline bool __tlb_remove_page_size(struct mmu_gather *tlb, in __tlb_remove_page_size() argument 54 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument 56 __tlb_flush_mm_lazy(tlb->mm); in tlb_flush() 61 * page table from the tlb 63 pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long address) pte_free_tlb() argument 85 pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, unsigned long address) pmd_free_tlb() argument 105 p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d, unsigned long address) p4d_free_tlb() argument 124 pud_free_tlb(struct mmu_gather *tlb, pud_t *pud, unsigned long address) pud_free_tlb() argument [all...] |
/kernel/linux/linux-5.10/arch/arm64/include/asm/ |
H A D | tlb.h | 3 * Based on arch/arm/include/asm/tlb.h 20 static void tlb_flush(struct mmu_gather *tlb); 22 #include <asm-generic/tlb.h> 29 static inline int tlb_get_level(struct mmu_gather *tlb) in tlb_get_level() argument 32 if (tlb->freed_tables) in tlb_get_level() 35 if (tlb->cleared_ptes && !(tlb->cleared_pmds || in tlb_get_level() 36 tlb->cleared_puds || in tlb_get_level() 37 tlb->cleared_p4ds)) in tlb_get_level() 40 if (tlb in tlb_get_level() 53 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument 75 __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) __pte_free_tlb() argument 83 __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) __pmd_free_tlb() argument 94 __pud_free_tlb(struct mmu_gather *tlb, pud_t *pudp, unsigned long addr) __pud_free_tlb() argument [all...] |
/kernel/linux/linux-6.6/arch/arm64/include/asm/ |
H A D | tlb.h | 3 * Based on arch/arm/include/asm/tlb.h 20 static void tlb_flush(struct mmu_gather *tlb); 22 #include <asm-generic/tlb.h> 29 static inline int tlb_get_level(struct mmu_gather *tlb) in tlb_get_level() argument 32 if (tlb->freed_tables) in tlb_get_level() 35 if (tlb->cleared_ptes && !(tlb->cleared_pmds || in tlb_get_level() 36 tlb->cleared_puds || in tlb_get_level() 37 tlb->cleared_p4ds)) in tlb_get_level() 40 if (tlb in tlb_get_level() 53 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument 75 __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) __pte_free_tlb() argument 85 __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) __pmd_free_tlb() argument 96 __pud_free_tlb(struct mmu_gather *tlb, pud_t *pudp, unsigned long addr) __pud_free_tlb() argument [all...] |
/kernel/linux/linux-6.6/arch/s390/include/asm/ |
H A D | tlb.h | 26 static inline void tlb_flush(struct mmu_gather *tlb); 27 static inline bool __tlb_remove_page_size(struct mmu_gather *tlb, 38 #include <asm-generic/tlb.h> 42 * tlb_ptep_clear_flush. In both flush modes the tlb for a page cache page 48 static inline bool __tlb_remove_page_size(struct mmu_gather *tlb, in __tlb_remove_page_size() argument 56 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument 58 __tlb_flush_mm_lazy(tlb->mm); in tlb_flush() 63 * page table from the tlb. 65 static inline void pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, in pte_free_tlb() argument 68 __tlb_adjust_range(tlb, addres in pte_free_tlb() 87 pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, unsigned long address) pmd_free_tlb() argument 107 p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d, unsigned long address) p4d_free_tlb() argument 125 pud_free_tlb(struct mmu_gather *tlb, pud_t *pud, unsigned long address) pud_free_tlb() argument [all...] |
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | tlb.h | 5 #define tlb_start_vma(tlb, vma) do { } while (0) 6 #define tlb_end_vma(tlb, vma) do { } while (0) 7 #define __tlb_remove_tlb_entry(tlb, ptep, address) do { } while (0) 10 static inline void tlb_flush(struct mmu_gather *tlb); 12 #include <asm-generic/tlb.h> 14 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument 17 unsigned int stride_shift = tlb_get_unmap_shift(tlb); in tlb_flush() 19 if (!tlb->fullmm && !tlb->need_flush_all) { in tlb_flush() 20 start = tlb in tlb_flush() [all...] |
/kernel/linux/linux-6.6/arch/riscv/include/asm/ |
H A D | tlb.h | 11 static void tlb_flush(struct mmu_gather *tlb); 14 #include <asm-generic/tlb.h> 16 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument 19 if (tlb->fullmm || tlb->need_flush_all || tlb->freed_tables) in tlb_flush() 20 flush_tlb_mm(tlb->mm); in tlb_flush() 22 flush_tlb_mm_range(tlb->mm, tlb->start, tlb in tlb_flush() [all...] |
/kernel/linux/linux-6.6/arch/x86/include/asm/ |
H A D | tlb.h | 6 static inline void tlb_flush(struct mmu_gather *tlb); 8 #include <asm-generic/tlb.h> 10 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument 13 unsigned int stride_shift = tlb_get_unmap_shift(tlb); in tlb_flush() 15 if (!tlb->fullmm && !tlb->need_flush_all) { in tlb_flush() 16 start = tlb->start; in tlb_flush() 17 end = tlb->end; in tlb_flush() 20 flush_tlb_mm_range(tlb->mm, start, end, stride_shift, tlb in tlb_flush() [all...] |
/kernel/linux/linux-5.10/arch/arm/include/asm/ |
H A D | tlb.h | 3 * arch/arm/include/asm/tlb.h 8 * to use the "invalidate whole tlb" rather than "invalidate single 9 * tlb" for this. 23 #define tlb_flush(tlb) ((void) tlb) 25 #include <asm-generic/tlb.h> 37 #include <asm-generic/tlb.h> 40 __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) in __pte_free_tlb() argument 50 __tlb_adjust_range(tlb, addr - PAGE_SIZE, 2 * PAGE_SIZE); in __pte_free_tlb() 53 tlb_remove_table(tlb, pt in __pte_free_tlb() 57 __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) __pmd_free_tlb() argument [all...] |
/kernel/linux/linux-6.6/arch/arm/include/asm/ |
H A D | tlb.h | 3 * arch/arm/include/asm/tlb.h 8 * to use the "invalidate whole tlb" rather than "invalidate single 9 * tlb" for this. 23 #define tlb_flush(tlb) ((void) tlb) 25 #include <asm-generic/tlb.h> 37 #include <asm-generic/tlb.h> 40 __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) in __pte_free_tlb() argument 52 __tlb_adjust_range(tlb, addr - PAGE_SIZE, 2 * PAGE_SIZE); in __pte_free_tlb() 55 tlb_remove_ptdesc(tlb, ptdes in __pte_free_tlb() 59 __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) __pmd_free_tlb() argument [all...] |
/kernel/linux/linux-5.10/arch/sh/mm/ |
H A D | Makefile | 30 debugfs-$(CONFIG_CPU_SH4) += tlb-debugfs.o 31 tlb-$(CONFIG_CPU_SH3) := tlb-sh3.o 32 tlb-$(CONFIG_CPU_SH4) := tlb-sh4.o tlb-urb.o 33 tlb-$(CONFIG_CPU_HAS_PTEAEX) := tlb-pteaex.o tlb-urb.o 34 obj-y += $(tlb [all...] |
/kernel/linux/linux-6.6/arch/sh/mm/ |
H A D | Makefile | 30 debugfs-$(CONFIG_CPU_SH4) += tlb-debugfs.o 31 tlb-$(CONFIG_CPU_SH3) := tlb-sh3.o 32 tlb-$(CONFIG_CPU_SH4) := tlb-sh4.o tlb-urb.o 33 tlb-$(CONFIG_CPU_HAS_PTEAEX) := tlb-pteaex.o tlb-urb.o 34 obj-y += $(tlb [all...] |
/kernel/linux/linux-5.10/arch/csky/include/asm/ |
H A D | tlb.h | 9 #define tlb_start_vma(tlb, vma) \ 11 if (!(tlb)->fullmm) \ 15 #define tlb_end_vma(tlb, vma) \ 17 if (!(tlb)->fullmm) \ 21 #define tlb_flush(tlb) flush_tlb_mm((tlb)->mm) 23 #include <asm-generic/tlb.h>
|
/kernel/linux/linux-5.10/arch/loongarch/include/asm/ |
H A D | tlb.h | 49 /* Invalid all tlb */ 51 /* Invalid current tlb */ 53 /* Invalid all global=1 lines in current tlb */ 55 /* Invalid all global=0 lines in current tlb */ 57 /* Invalid global=0 and matched asid lines in current tlb */ 59 /* Invalid addr with global=0 and matched asid in current tlb */ 61 /* Invalid addr with global=1 or matched asid in current tlb */ 63 /* Invalid matched gid in guest tlb */ 65 /* Invalid global=1, matched gid in guest tlb */ 67 /* Invalid global=0, matched gid in guest tlb */ 152 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument [all...] |
/kernel/linux/linux-5.10/arch/powerpc/include/asm/nohash/ |
H A D | pgalloc.h | 8 extern void tlb_remove_table(struct mmu_gather *tlb, void *table); 10 extern void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address); 13 static inline void tlb_flush_pgtable(struct mmu_gather *tlb, in tlb_flush_pgtable() argument 49 static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, int shift) in pgtable_free_tlb() argument 55 tlb_remove_table(tlb, (void *)pgf); in pgtable_free_tlb() 66 static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t table, in __pte_free_tlb() argument 69 tlb_flush_pgtable(tlb, address); in __pte_free_tlb() 70 pgtable_free_tlb(tlb, table, 0); in __pte_free_tlb()
|
/kernel/linux/linux-6.6/arch/powerpc/include/asm/nohash/ |
H A D | pgalloc.h | 8 extern void tlb_remove_table(struct mmu_gather *tlb, void *table); 10 extern void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address); 13 static inline void tlb_flush_pgtable(struct mmu_gather *tlb, in tlb_flush_pgtable() argument 49 static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, int shift) in pgtable_free_tlb() argument 55 tlb_remove_table(tlb, (void *)pgf); in pgtable_free_tlb() 66 static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t table, in __pte_free_tlb() argument 69 tlb_flush_pgtable(tlb, address); in __pte_free_tlb() 70 pgtable_free_tlb(tlb, table, 0); in __pte_free_tlb()
|
/kernel/linux/linux-5.10/arch/powerpc/mm/ |
H A D | hugetlbpage.c | 23 #include <asm/tlb.h> 268 static void hugepd_free(struct mmu_gather *tlb, void *hugepte) in hugepd_free() argument 274 if (atomic_read(&tlb->mm->mm_users) < 2 || in hugepd_free() 275 mm_is_thread_local(tlb->mm)) { in hugepd_free() 294 static inline void hugepd_free(struct mmu_gather *tlb, void *hugepte) {} in hugepd_free() argument 297 static void free_hugepd_range(struct mmu_gather *tlb, hugepd_t *hpdp, int pdshift, in free_hugepd_range() argument 327 hugepd_free(tlb, hugepte); in free_hugepd_range() 329 pgtable_free_tlb(tlb, hugepte, in free_hugepd_range() 333 static void hugetlb_free_pte_range(struct mmu_gather *tlb, pmd_t *pmd, in hugetlb_free_pte_range() argument 352 pte_free_tlb(tlb, toke in hugetlb_free_pte_range() 356 hugetlb_free_pmd_range(struct mmu_gather *tlb, pud_t *pud, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) hugetlb_free_pmd_range() argument 415 hugetlb_free_pud_range(struct mmu_gather *tlb, p4d_t *p4d, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) hugetlb_free_pud_range() argument 469 hugetlb_free_pgd_range(struct mmu_gather *tlb, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) hugetlb_free_pgd_range() argument [all...] |
/kernel/linux/linux-6.6/arch/powerpc/mm/ |
H A D | hugetlbpage.c | 23 #include <asm/tlb.h> 275 static void hugepd_free(struct mmu_gather *tlb, void *hugepte) in hugepd_free() argument 281 if (atomic_read(&tlb->mm->mm_users) < 2 || in hugepd_free() 282 mm_is_thread_local(tlb->mm)) { in hugepd_free() 301 static inline void hugepd_free(struct mmu_gather *tlb, void *hugepte) {} in hugepd_free() argument 319 static void free_hugepd_range(struct mmu_gather *tlb, hugepd_t *hpdp, int pdshift, in free_hugepd_range() argument 341 hugepd_free(tlb, hugepte); in free_hugepd_range() 343 pgtable_free_tlb(tlb, hugepte, in free_hugepd_range() 347 static void hugetlb_free_pte_range(struct mmu_gather *tlb, pmd_t *pmd, in hugetlb_free_pte_range() argument 357 pte_free_tlb(tlb, toke in hugetlb_free_pte_range() 361 hugetlb_free_pmd_range(struct mmu_gather *tlb, pud_t *pud, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) hugetlb_free_pmd_range() argument 412 hugetlb_free_pud_range(struct mmu_gather *tlb, p4d_t *p4d, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) hugetlb_free_pud_range() argument 458 hugetlb_free_pgd_range(struct mmu_gather *tlb, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) hugetlb_free_pgd_range() argument [all...] |
/kernel/linux/linux-5.10/arch/sparc/include/asm/ |
H A D | pgalloc_64.h | 79 static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, bool is_page) in pgtable_free_tlb() argument 84 tlb_remove_table(tlb, (void *)pgf); in pgtable_free_tlb() 97 static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, bool is_page) in pgtable_free_tlb() argument 103 static inline void __pte_free_tlb(struct mmu_gather *tlb, pte_t *pte, in __pte_free_tlb() argument 106 pgtable_free_tlb(tlb, pte, true); in __pte_free_tlb() 109 #define __pmd_free_tlb(tlb, pmd, addr) \ 110 pgtable_free_tlb(tlb, pmd, false) 112 #define __pud_free_tlb(tlb, pud, addr) \ 113 pgtable_free_tlb(tlb, pud, false)
|
/kernel/linux/linux-6.6/arch/loongarch/include/asm/ |
H A D | tlb.h | 49 /* Invalid all tlb */ 51 /* Invalid current tlb */ 53 /* Invalid all global=1 lines in current tlb */ 55 /* Invalid all global=0 lines in current tlb */ 57 /* Invalid global=0 and matched asid lines in current tlb */ 59 /* Invalid addr with global=0 and matched asid in current tlb */ 61 /* Invalid addr with global=1 or matched asid in current tlb */ 63 /* Invalid matched gid in guest tlb */ 65 /* Invalid global=1, matched gid in guest tlb */ 67 /* Invalid global=0, matched gid in guest tlb */ 142 tlb_flush(struct mmu_gather *tlb) tlb_flush() argument [all...] |
/kernel/linux/linux-6.6/arch/sparc/include/asm/ |
H A D | pgalloc_64.h | 82 static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, bool is_page) in pgtable_free_tlb() argument 87 tlb_remove_table(tlb, (void *)pgf); in pgtable_free_tlb() 100 static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, bool is_page) in pgtable_free_tlb() argument 106 static inline void __pte_free_tlb(struct mmu_gather *tlb, pte_t *pte, in __pte_free_tlb() argument 109 pgtable_free_tlb(tlb, pte, true); in __pte_free_tlb() 112 #define __pmd_free_tlb(tlb, pmd, addr) \ 113 pgtable_free_tlb(tlb, pmd, false) 115 #define __pud_free_tlb(tlb, pud, addr) \ 116 pgtable_free_tlb(tlb, pud, false)
|
/kernel/linux/linux-5.10/arch/parisc/include/asm/ |
H A D | tlb.h | 5 #include <asm-generic/tlb.h> 8 #define __pmd_free_tlb(tlb, pmd, addr) pmd_free((tlb)->mm, pmd) 10 #define __pte_free_tlb(tlb, pte, addr) pte_free((tlb)->mm, pte)
|