mmu_gather
__pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr)
__pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr)
static inline void __p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4dp,
static void tlb_flush(struct mmu_gather *tlb);
static inline int tlb_get_level(struct mmu_gather *tlb)
static inline void tlb_flush(struct mmu_gather *tlb)
static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte,
static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp,
static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pudp,
static void tlb_flush(struct mmu_gather *tlb);
static inline void tlb_flush(struct mmu_gather *tlb)
static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable,
static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable,
static inline int __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd,
static inline void pgtable_free_tlb(struct mmu_gather *tlb,
static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t table,
void hash__flush_gather(struct mmu_gather *tlb);
static inline void tlb_flush(struct mmu_gather *tlb)
static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pud,
static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd,
static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t table,
extern void pgtable_free_tlb(struct mmu_gather *tlb, void *table, int shift);
struct mmu_gather;
extern void hash__tlb_flush(struct mmu_gather *tlb);
struct mmu_gather;
extern void radix__tlb_flush(struct mmu_gather *tlb);
static inline void tlb_flush(struct mmu_gather *tlb)
extern void tlb_remove_table(struct mmu_gather *tlb, void *table);
extern void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address);
static inline void tlb_flush_pgtable(struct mmu_gather *tlb,
static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, int shift)
static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t table,
extern void tlb_remove_table(struct mmu_gather *tlb, void *table);
static inline void __tlb_remove_tlb_entry(struct mmu_gather *tlb, pte_t *ptep,
extern void tlb_flush(struct mmu_gather *tlb);
static inline void __tlb_remove_tlb_entry(struct mmu_gather *tlb, pte_t *ptep,
struct mmu_gather tlb;
void hash__flush_gather(struct mmu_gather *tlb)
void hash__tlb_flush(struct mmu_gather *tlb)
void pgtable_free_tlb(struct mmu_gather *tlb, void *table, int index)
void radix__tlb_flush(struct mmu_gather *tlb)
void tlb_flush(struct mmu_gather *tlb)
void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address)
static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd,
static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte,
static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pud,
static inline void __p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d,
static void tlb_flush(struct mmu_gather *tlb);
static inline void tlb_flush(struct mmu_gather *tlb)
struct mmu_gather;
static inline void p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d,
static inline void pud_free_tlb(struct mmu_gather *tlb, pud_t *pud,
static inline void tlb_flush(struct mmu_gather *tlb);
static inline bool __tlb_remove_page_size(struct mmu_gather *tlb,
static inline bool __tlb_remove_folio_pages(struct mmu_gather *tlb,
static inline bool __tlb_remove_page_size(struct mmu_gather *tlb,
static inline bool __tlb_remove_folio_pages(struct mmu_gather *tlb,
static inline void tlb_flush(struct mmu_gather *tlb)
static inline void pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte,
static inline void pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd,
static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, bool is_page)
static inline void __pte_free_tlb(struct mmu_gather *tlb, pte_t *pte,
struct mmu_gather;
void tlb_remove_table(struct mmu_gather *, void *);
static inline void pgtable_free_tlb(struct mmu_gather *tlb, void *table, bool is_page)
extern void ___pud_free_tlb(struct mmu_gather *tlb, pud_t *pud);
static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pud,
extern void ___p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d);
static inline void __p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d,
extern void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte);
static inline void __pte_free_tlb(struct mmu_gather *tlb, struct page *pte,
extern void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd);
static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd,
static inline void tlb_flush(struct mmu_gather *tlb)
static inline void tlb_flush(struct mmu_gather *tlb);
struct mmu_gather tlb;
void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte)
void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd)
void ___pud_free_tlb(struct mmu_gather *tlb, pud_t *pud)
void ___p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d)
struct mmu_gather tlb;
extern void tlb_remove_table(struct mmu_gather *tlb, void *table);
static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page);
static inline void tlb_remove_table(struct mmu_gather *tlb, void *table)
extern bool __tlb_remove_page_size(struct mmu_gather *tlb, struct page *page, int page_size);
bool __tlb_remove_folio_pages(struct mmu_gather *tlb, struct page *page,
extern void tlb_flush_rmaps(struct mmu_gather *tlb, struct vm_area_struct *vma);
static inline void tlb_flush_rmaps(struct mmu_gather *tlb, struct vm_area_struct *vma) { }
void tlb_flush_mmu(struct mmu_gather *tlb);
static inline void __tlb_adjust_range(struct mmu_gather *tlb,
static inline void __tlb_reset_range(struct mmu_gather *tlb)
static inline void tlb_flush(struct mmu_gather *tlb)
static inline void tlb_flush(struct mmu_gather *tlb)
tlb_update_vma_flags(struct mmu_gather *tlb, struct vm_area_struct *vma)
static inline void tlb_flush_mmu_tlbonly(struct mmu_gather *tlb)
static inline void tlb_remove_page_size(struct mmu_gather *tlb,
static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page)
static inline void tlb_remove_ptdesc(struct mmu_gather *tlb, struct ptdesc *pt)
static inline void tlb_change_page_size(struct mmu_gather *tlb,
static inline unsigned long tlb_get_unmap_shift(struct mmu_gather *tlb)
static inline unsigned long tlb_get_unmap_size(struct mmu_gather *tlb)
static inline void tlb_start_vma(struct mmu_gather *tlb, struct vm_area_struct *vma)
static inline void tlb_end_vma(struct mmu_gather *tlb, struct vm_area_struct *vma)
static inline void tlb_free_vmas(struct mmu_gather *tlb)
static inline void tlb_flush_pte_range(struct mmu_gather *tlb,
static inline void tlb_flush_pmd_range(struct mmu_gather *tlb,
static inline void tlb_flush_pud_range(struct mmu_gather *tlb,
static inline void tlb_flush_p4d_range(struct mmu_gather *tlb,
static inline void __tlb_remove_tlb_entry(struct mmu_gather *tlb, pte_t *ptep, unsigned long address)
static inline void tlb_remove_tlb_entries(struct mmu_gather *tlb,
static inline void tlb_unshare_pmd_ptdesc(struct mmu_gather *tlb, struct ptdesc *pt,
static inline void tlb_flush_unshared_tables(struct mmu_gather *tlb)
bool madvise_free_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
bool zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma, pmd_t *pmd,
int zap_huge_pud(struct mmu_gather *tlb, struct vm_area_struct *vma, pud_t *pud,
int change_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
int change_huge_pud(struct mmu_gather *tlb, struct vm_area_struct *vma,
change_huge_pud(struct mmu_gather *tlb, struct vm_area_struct *vma,
static inline int change_huge_pud(struct mmu_gather *tlb,
void __unmap_hugepage_range(struct mmu_gather *tlb,
struct mmu_gather;
int huge_pmd_unshare(struct mmu_gather *tlb, struct vm_area_struct *vma,
void huge_pmd_unshare_flush(struct mmu_gather *tlb, struct vm_area_struct *vma);
static inline int huge_pmd_unshare(struct mmu_gather *tlb,
static inline void huge_pmd_unshare_flush(struct mmu_gather *tlb,
static inline void __unmap_hugepage_range(struct mmu_gather *tlb,
struct mmu_gather;
void free_pgd_range(struct mmu_gather *tlb, unsigned long addr,
extern long change_protection(struct mmu_gather *tlb,
extern int mprotect_fixup(struct vma_iterator *vmi, struct mmu_gather *tlb,
struct mmu_gather;
extern void tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm);
extern void tlb_gather_mmu_fullmm(struct mmu_gather *tlb, struct mm_struct *mm);
void tlb_gather_mmu_vma(struct mmu_gather *tlb, struct vm_area_struct *vma);
extern void tlb_finish_mmu(struct mmu_gather *tlb);
bool madvise_free_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
bool zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
int change_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
int change_huge_pud(struct mmu_gather *tlb, struct vm_area_struct *vma,
int zap_huge_pud(struct mmu_gather *tlb, struct vm_area_struct *vma,
struct mmu_gather tlb;
void __unmap_hugepage_range(struct mmu_gather *tlb, struct vm_area_struct *vma,
struct mmu_gather tlb;
struct mmu_gather tlb;
int huge_pmd_unshare(struct mmu_gather *tlb, struct vm_area_struct *vma,
void huge_pmd_unshare_flush(struct mmu_gather *tlb, struct vm_area_struct *vma)
int huge_pmd_unshare(struct mmu_gather *tlb, struct vm_area_struct *vma,
void huge_pmd_unshare_flush(struct mmu_gather *tlb, struct vm_area_struct *vma)
struct mmu_gather tlb;
void unmap_vmas(struct mmu_gather *tlb, struct unmap_desc *unmap);
void free_pgtables(struct mmu_gather *tlb, struct unmap_desc *desc);
void zap_vma_range_batched(struct mmu_gather *tlb,
struct mmu_gather tlb;
struct mmu_gather tlb;
struct mmu_gather *tlb = private->tlb;
struct mmu_gather *tlb;
static void madvise_cold_page_range(struct mmu_gather *tlb,
struct mmu_gather tlb;
static void madvise_pageout_page_range(struct mmu_gather *tlb,
struct mmu_gather tlb;
struct mmu_gather *tlb = walk->private;
struct mmu_gather *tlb;
struct mmu_gather *tlb = madv_behavior->tlb;
static __always_inline void zap_present_folio_ptes(struct mmu_gather *tlb,
static inline int zap_present_ptes(struct mmu_gather *tlb,
static inline int zap_nonpresent_ptes(struct mmu_gather *tlb,
static void free_pte_range(struct mmu_gather *tlb, pmd_t *pmd,
static inline int do_zap_pte_range(struct mmu_gather *tlb,
static inline void free_pmd_range(struct mmu_gather *tlb, pud_t *pud,
static unsigned long zap_pte_range(struct mmu_gather *tlb,
static inline unsigned long zap_pmd_range(struct mmu_gather *tlb,
static inline unsigned long zap_pud_range(struct mmu_gather *tlb,
static inline unsigned long zap_p4d_range(struct mmu_gather *tlb,
static void __zap_vma_range(struct mmu_gather *tlb, struct vm_area_struct *vma,
struct mmu_gather tlb;
void unmap_vmas(struct mmu_gather *tlb, struct unmap_desc *unmap)
void zap_vma_range_batched(struct mmu_gather *tlb,
static inline void free_pud_range(struct mmu_gather *tlb, p4d_t *p4d,
struct mmu_gather tlb;
static inline void free_p4d_range(struct mmu_gather *tlb, pgd_t *pgd,
void free_pgd_range(struct mmu_gather *tlb,
void free_pgtables(struct mmu_gather *tlb, struct unmap_desc *unmap)
struct mmu_gather tlb;
struct mmu_gather tlb;
struct mmu_gather tlb;
static void tlb_batch_pages_flush(struct mmu_gather *tlb)
static void tlb_batch_list_free(struct mmu_gather *tlb)
static bool __tlb_remove_folio_pages_size(struct mmu_gather *tlb,
static bool tlb_next_batch(struct mmu_gather *tlb)
bool __tlb_remove_folio_pages(struct mmu_gather *tlb, struct page *page,
bool __tlb_remove_page_size(struct mmu_gather *tlb, struct page *page, int page_size)
static inline void tlb_table_invalidate(struct mmu_gather *tlb)
static void tlb_table_flush(struct mmu_gather *tlb)
void tlb_remove_table(struct mmu_gather *tlb, void *table)
static inline void tlb_table_init(struct mmu_gather *tlb)
static inline void tlb_table_flush(struct mmu_gather *tlb) { }
static inline void tlb_table_init(struct mmu_gather *tlb) { }
static void tlb_flush_mmu_free(struct mmu_gather *tlb)
void tlb_flush_mmu(struct mmu_gather *tlb)
static void __tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm,
void tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm)
void tlb_gather_mmu_fullmm(struct mmu_gather *tlb, struct mm_struct *mm)
void tlb_gather_mmu_vma(struct mmu_gather *tlb, struct vm_area_struct *vma)
void tlb_finish_mmu(struct mmu_gather *tlb)
void tlb_flush_rmaps(struct mmu_gather *tlb, struct vm_area_struct *vma)
int idx, bool set_write, struct mmu_gather *tlb)
pte_t oldpte, pte_t ptent, int nr_ptes, struct mmu_gather *tlb)
pte_t oldpte, pte_t ptent, int nr_ptes, struct mmu_gather *tlb)
static long change_pte_range(struct mmu_gather *tlb,
static inline long change_pmd_range(struct mmu_gather *tlb,
static inline long change_pud_range(struct mmu_gather *tlb,
static inline long change_p4d_range(struct mmu_gather *tlb,
static long change_protection_range(struct mmu_gather *tlb,
long change_protection(struct mmu_gather *tlb,
mprotect_fixup(struct vma_iterator *vmi, struct mmu_gather *tlb,
struct mmu_gather tlb;
struct mmu_gather tlb;
struct mmu_gather tlb;
struct mmu_gather tlb;
struct mmu_gather tlb;
struct mmu_gather tlb;
static inline void tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm)
static inline void unmap_vmas(struct mmu_gather *tlb, struct unmap_desc *unmap)
static inline void free_pgtables(struct mmu_gather *tlb, struct unmap_desc *unmap)
static inline void tlb_finish_mmu(struct mmu_gather *tlb)
static inline void free_pgd_range(struct mmu_gather *tlb,