Home
last modified time | relevance | path

Searched refs:pmd (Results 1 – 19 of 19) sorted by relevance

/linux-4.19.296/include/asm-generic/
Dpgtable.h82 pmd_t pmd = *pmdp; in pmdp_test_and_clear_young() local
84 if (!pmd_young(pmd)) in pmdp_test_and_clear_young()
87 set_pmd_at(vma->vm_mm, address, pmdp, pmd_mkold(pmd)); in pmdp_test_and_clear_young()
141 pmd_t pmd = *pmdp; in pmdp_huge_get_and_clear() local
143 return pmd; in pmdp_huge_get_and_clear()
319 unsigned long address, pmd_t *pmdp, pmd_t pmd) in generic_pmdp_establish() argument
322 set_pmd_at(vma->vm_mm, address, pmdp, pmd); in generic_pmdp_establish()
358 #define pmd_access_permitted(pmd, write) \ argument
359 (pmd_present(pmd) && (!(write) || pmd_write(pmd)))
560 static inline int pmd_none_or_clear_bad(pmd_t *pmd) in pmd_none_or_clear_bad() argument
[all …]
Dpgtable-nopmd.h34 #define pmd_ERROR(pmd) (pud_ERROR((pmd).pud)) argument
36 #define pud_populate(mm, pmd, pte) do { } while (0) argument
60 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
D4level-fixup.h26 #define pud_populate(mm, pud, pmd) pgd_populate(mm, pud, pmd) argument
Dpage.h41 unsigned long pmd[16]; member
52 #define pmd_val(x) ((&x)->pmd[0])
/linux-4.19.296/virt/kvm/arm/
Dmmu.c85 static void kvm_flush_dcache_pmd(pmd_t pmd) in kvm_flush_dcache_pmd() argument
87 __kvm_flush_dcache_pmd(pmd); in kvm_flush_dcache_pmd()
109 static void stage2_dissolve_pmd(struct kvm *kvm, phys_addr_t addr, pmd_t *pmd) in stage2_dissolve_pmd() argument
111 if (!pmd_thp_or_huge(*pmd)) in stage2_dissolve_pmd()
114 pmd_clear(pmd); in stage2_dissolve_pmd()
116 put_page(virt_to_page(pmd)); in stage2_dissolve_pmd()
170 static void clear_stage2_pmd_entry(struct kvm *kvm, pmd_t *pmd, phys_addr_t addr) in clear_stage2_pmd_entry() argument
172 pte_t *pte_table = pte_offset_kernel(pmd, 0); in clear_stage2_pmd_entry()
173 VM_BUG_ON(pmd_thp_or_huge(*pmd)); in clear_stage2_pmd_entry()
174 pmd_clear(pmd); in clear_stage2_pmd_entry()
[all …]
/linux-4.19.296/include/linux/
Dhuge_mm.h30 pmd_t *pmd,
34 pmd_t *pmd, unsigned long addr, unsigned long next);
37 pmd_t *pmd, unsigned long addr);
41 extern int mincore_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
47 extern int change_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
150 void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
183 extern spinlock_t *__pmd_trans_huge_lock(pmd_t *pmd,
188 static inline int is_swap_pmd(pmd_t pmd) in is_swap_pmd() argument
190 return !pmd_none(pmd) && !pmd_present(pmd); in is_swap_pmd()
194 static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd, in pmd_trans_huge_lock() argument
[all …]
Dswapops.h226 extern void migration_entry_wait(struct mm_struct *mm, pmd_t *pmd,
251 static inline void migration_entry_wait(struct mm_struct *mm, pmd_t *pmd, in migration_entry_wait() argument
271 extern void pmd_migration_entry_wait(struct mm_struct *mm, pmd_t *pmd);
273 static inline swp_entry_t pmd_to_swp_entry(pmd_t pmd) in pmd_to_swp_entry() argument
277 if (pmd_swp_soft_dirty(pmd)) in pmd_to_swp_entry()
278 pmd = pmd_swp_clear_soft_dirty(pmd); in pmd_to_swp_entry()
279 arch_entry = __pmd_to_swp_entry(pmd); in pmd_to_swp_entry()
291 static inline int is_pmd_migration_entry(pmd_t pmd) in is_pmd_migration_entry() argument
293 return !pmd_present(pmd) && is_migration_entry(pmd_to_swp_entry(pmd)); in is_pmd_migration_entry()
310 static inline swp_entry_t pmd_to_swp_entry(pmd_t pmd) in pmd_to_swp_entry() argument
[all …]
Dmm.h349 pmd_t *pmd; /* Pointer to pmd entry matching member
480 static inline int pmd_devmap(pmd_t pmd) in pmd_devmap() argument
1349 pmd_t pmd);
1385 int (*pmd_entry)(pmd_t *pmd, unsigned long addr,
1823 int __pte_alloc(struct mm_struct *mm, pmd_t *pmd, unsigned long address);
1824 int __pte_alloc_kernel(pmd_t *pmd, unsigned long address);
1885 static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) in pte_lockptr() argument
1887 return ptlock_ptr(pmd_page(*pmd)); in pte_lockptr()
1917 static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) in pte_lockptr() argument
1948 #define pte_offset_map_lock(mm, pmd, address, ptlp) \ argument
[all …]
Dmigrate.h127 extern bool pmd_trans_migrating(pmd_t pmd);
131 static inline bool pmd_trans_migrating(pmd_t pmd) in pmd_trans_migrating() argument
145 pmd_t *pmd, pmd_t entry,
151 pmd_t *pmd, pmd_t entry, in migrate_misplaced_transhuge_page() argument
Dpfn_t.h118 pmd_t pmd_mkdevmap(pmd_t pmd);
Dhugetlb.h150 pmd_t *pmd, int flags);
156 int pmd_huge(pmd_t pmd);
197 #define follow_huge_pmd(mm, addr, pmd, flags) NULL argument
Drmap.h213 pmd_t *pmd; member
/linux-4.19.296/lib/
Dioremap.c61 static int ioremap_pte_range(pmd_t *pmd, unsigned long addr, in ioremap_pte_range() argument
68 pte = pte_alloc_kernel(pmd, addr); in ioremap_pte_range()
82 pmd_t *pmd; in ioremap_pmd_range() local
86 pmd = pmd_alloc(&init_mm, pud, addr); in ioremap_pmd_range()
87 if (!pmd) in ioremap_pmd_range()
95 pmd_free_pte_page(pmd, addr)) { in ioremap_pmd_range()
96 if (pmd_set_huge(pmd, phys_addr + addr, prot)) in ioremap_pmd_range()
100 if (ioremap_pte_range(pmd, addr, next, phys_addr + addr, prot)) in ioremap_pmd_range()
102 } while (pmd++, addr = next, addr != end); in ioremap_pmd_range()
/linux-4.19.296/include/trace/events/
Dthp.h31 TP_PROTO(unsigned long addr, unsigned long pmd),
32 TP_ARGS(addr, pmd),
35 __field(unsigned long, pmd)
40 __entry->pmd = pmd;
43 TP_printk("Set pmd with 0x%lx with 0x%lx", __entry->addr, __entry->pmd)
Dxen.h186 __entry->pmdval = pmdval.pmd),
/linux-4.19.296/fs/proc/
Dtask_mmu.c551 static void smaps_pmd_entry(pmd_t *pmd, unsigned long addr, in smaps_pmd_entry() argument
560 page = follow_trans_huge_pmd(vma, addr, pmd, FOLL_DUMP); in smaps_pmd_entry()
571 smaps_account(mss, page, true, pmd_young(*pmd), pmd_dirty(*pmd), locked); in smaps_pmd_entry()
574 static void smaps_pmd_entry(pmd_t *pmd, unsigned long addr, in smaps_pmd_entry() argument
580 static int smaps_pte_range(pmd_t *pmd, unsigned long addr, unsigned long end, in smaps_pte_range() argument
587 ptl = pmd_trans_huge_lock(pmd, vma); in smaps_pte_range()
589 if (pmd_present(*pmd)) in smaps_pte_range()
590 smaps_pmd_entry(pmd, addr, walk); in smaps_pte_range()
595 if (pmd_trans_unstable(pmd)) in smaps_pte_range()
602 pte = pte_offset_map_lock(vma->vm_mm, pmd, addr, &ptl); in smaps_pte_range()
[all …]
/linux-4.19.296/drivers/edac/
Dxgene_edac.c527 u32 pmd; member
545 ctx->pmd * MAX_CPU_PER_PMD + cpu_idx, val, in xgene_edac_pmd_l1_check()
585 ctx->pmd * MAX_CPU_PER_PMD + cpu_idx, val, in xgene_edac_pmd_l1_check()
629 ctx->pmd * MAX_CPU_PER_PMD + cpu_idx, val, in xgene_edac_pmd_l1_check()
689 ctx->pmd, val, val_hi, val_lo); in xgene_edac_pmd_l2_check()
741 ctx->pmd, val, val_hi, val_lo); in xgene_edac_pmd_l2_check()
753 if (!((PMD0_MERR_MASK << ctx->pmd) & pcp_hp_stat)) in xgene_edac_pmd_check()
803 PMD0_MERR_MASK << ctx->pmd); in xgene_edac_pmd_hw_ctl()
806 PMD0_MERR_MASK << ctx->pmd); in xgene_edac_pmd_hw_ctl()
882 snprintf(name, sizeof(name), "PMD%d", ctx->pmd); in xgene_edac_pmd_create_debugfs_nodes()
[all …]
/linux-4.19.296/fs/
Ddax.c903 pmd_t pmd; in dax_mapping_entry_mkclean() local
912 pmd = pmdp_invalidate(vma, address, pmdp); in dax_mapping_entry_mkclean()
913 pmd = pmd_wrprotect(pmd); in dax_mapping_entry_mkclean()
914 pmd = pmd_mkclean(pmd); in dax_mapping_entry_mkclean()
915 set_pmd_at(vma->vm_mm, address, pmdp, pmd); in dax_mapping_entry_mkclean()
1385 if (pmd_trans_huge(*vmf->pmd) || pmd_devmap(*vmf->pmd)) { in dax_iomap_pte_fault()
1531 ptl = pmd_lock(vmf->vma->vm_mm, vmf->pmd); in dax_pmd_load_hole()
1532 if (!pmd_none(*(vmf->pmd))) { in dax_pmd_load_hole()
1539 set_pmd_at(vmf->vma->vm_mm, pmd_addr, vmf->pmd, pmd_entry); in dax_pmd_load_hole()
1622 if (!pmd_none(*vmf->pmd) && !pmd_trans_huge(*vmf->pmd) && in dax_iomap_pmd_fault()
[all …]
Duserfaultfd.c287 pmd_t *pmd, _pmd; in userfaultfd_must_wait() local
302 pmd = pmd_offset(pud, address); in userfaultfd_must_wait()
311 _pmd = READ_ONCE(*pmd); in userfaultfd_must_wait()
326 pte = pte_offset_map(pmd, address); in userfaultfd_must_wait()