/linux-master/arch/alpha/include/asm/ |
H A D | tlb.h | 8 #define __pmd_free_tlb(tlb, pmd, address) pmd_free((tlb)->mm, pmd)
|
H A D | page.h | 31 typedef struct { unsigned long pmd; } pmd_t; member in struct:__anon2 36 #define pmd_val(x) ((x).pmd)
|
H A D | pgalloc.h | 17 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) argument 19 pmd_set(pmd, (pte_t *)(page_to_pa(pte) + PAGE_OFFSET)); 23 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) argument 25 pmd_set(pmd, pte); 29 pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) argument 31 pud_set(pud, pmd);
|
H A D | pgtable.h | 217 pmd_page_vaddr(pmd_t pmd) argument 219 return ((pmd_val(pmd) & _PFN_MASK) >> (32-PAGE_SHIFT)) + PAGE_OFFSET; 222 #define pmd_pfn(pmd) (pmd_val(pmd) >> 32) 223 #define pmd_page(pmd) (pfn_to_page(pmd_val(pmd) >> 32)) 238 extern inline int pmd_none(pmd_t pmd) { return !pmd_val(pmd); } argument 239 extern inline int pmd_bad(pmd_t pmd) { return (pmd_val(pmd) argument 240 pmd_present(pmd_t pmd) argument [all...] |
/linux-master/arch/arm/include/asm/ |
H A D | pgtable-2level-types.h | 22 typedef struct { pmdval_t pmd; } pmd_t; member in struct:__anon43 27 #define pmd_val(x) ((x).pmd)
|
H A D | pgtable-3level-types.h | 25 typedef struct { pmdval_t pmd; } pmd_t; member in struct:__anon47 30 #define pmd_val(x) ((x).pmd)
|
H A D | kfence.h | 11 static inline int split_pmd_page(pmd_t *pmd, unsigned long addr) argument 22 pmd_populate_kernel(&init_mm, pmd, pte); 31 pmd_t *pmd; local 35 pmd = pmd_off_k(addr); 37 if (pmd_leaf(*pmd)) { 38 if (split_pmd_page(pmd, addr & PMD_MASK))
|
H A D | pgalloc.h | 26 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) argument 28 set_pud(pud, __pud(__pa(pmd) | PMD_TYPE_TABLE)); 38 #define pmd_free(mm, pmd) do { } while (0) 41 #define pud_populate(mm,pmd,pte) do { } while (0) 43 #define pud_populate(mm,pmd,pte) BUG() 119 * Populate the pmdp entry with a pointer to the pte. This pmd is part 128 * The pmd must be loaded with the physical address of the PTE table
|
H A D | pgtable-2level.h | 181 * The "pud_xxx()" functions here are trivial when the pmd is folded into 214 #define pmd_pfn(pmd) (__phys_to_pfn(pmd_val(pmd) & PHYS_MASK)) 216 #define pmd_leaf(pmd) (pmd_val(pmd) & 2) 217 #define pmd_bad(pmd) (pmd_val(pmd) & 2) 218 #define pmd_present(pmd) (pmd_val(pmd)) 234 /* we don't need complex calculations here as the pmd i [all...] |
H A D | pgtable-3level.h | 117 #define pmd_table(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ 119 #define pmd_sect(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ 121 #define pmd_leaf(pmd) pmd_sect(pmd) 140 #define pmd_bad(pmd) (!(pmd_val(pmd) & 2)) 176 #define pmd_isset(pmd, val) ((u32)(val) == (val) ? pmd_val(pmd) 219 pmd_mkinvalid(pmd_t pmd) argument 224 pmd_modify(pmd_t pmd, pgprot_t newprot) argument 232 set_pmd_at(struct mm_struct *mm, unsigned long addr, pmd_t *pmdp, pmd_t pmd) argument [all...] |
H A D | pgtable.h | 62 #define pmd_ERROR(pmd) __pmd_error(__FILE__, __LINE__, pmd) 74 * free_pgd_range() to avoid freeing the modules pmd when LPAE is enabled (pmd 159 #define pmd_none(pmd) (!pmd_val(pmd)) 161 static inline pte_t *pmd_page_vaddr(pmd_t pmd) argument 163 return __va(pmd_val(pmd) & PHYS_MASK & (s32)PAGE_MASK); 166 #define pmd_page(pmd) pfn_to_page(__phys_to_pfn(pmd_val(pmd) [all...] |
H A D | tlbflush.h | 570 static inline void flush_pmd_entry(void *pmd) argument 574 tlb_op(TLB_DCLEAN, "c7, c10, 1 @ flush_pmd", pmd); 575 tlb_l2_op(TLB_L2CLEAN_FR, "c15, c9, 1 @ L2 flush_pmd", pmd); 581 static inline void clean_pmd_entry(void *pmd) argument 585 tlb_op(TLB_DCLEAN, "c7, c10, 1 @ flush_pmd", pmd); 586 tlb_l2_op(TLB_L2CLEAN_FR, "c15, c9, 1 @ L2 flush_pmd", pmd); 638 #define update_mmu_cache_pmd(vma, address, pmd) do { } while (0)
|
/linux-master/arch/sparc/mm/ |
H A D | leon_mm.c | 40 unsigned int pgd, pmd, ped; local 93 pmd = LEON_BYPASS_LOAD_PA(ptr); 94 if (((pmd & SRMMU_ET_MASK) == SRMMU_ET_PTE)) { 96 printk(KERN_INFO "swprobe: pmd is entry level 2\n"); 98 pte = pmd; 99 paddrbase = pmd & _SRMMU_PTE_PMASK_LEON; 102 if (((pmd & SRMMU_ET_MASK) != SRMMU_ET_PTD)) { 104 printk(KERN_INFO "swprobe: pmd is invalid => 0\n"); 109 printk(KERN_INFO "swprobe: --- pmd (%x) ---\n", pmd); [all...] |
/linux-master/include/linux/ |
H A D | pfn_t.h | 113 pmd_t pmd_mkdevmap(pmd_t pmd);
|
/linux-master/arch/alpha/mm/ |
H A D | init.c | 150 pmd_t *pmd; local 191 pmd = pmd_offset(pud, VMALLOC_START); 192 pmd_set(pmd, (pte_t *)(two_pages + PAGE_SIZE)); 220 if (pmd != pmd_offset(pud, vaddr)) { 222 pmd = pmd_offset(pud, vaddr); 223 pmd_set(pmd, (pte_t *)kernel_end); 226 set_pte(pte_offset_kernel(pmd, vaddr),
|
/linux-master/arch/arc/include/asm/ |
H A D | hugepage.h | 20 static inline pte_t pmd_pte(pmd_t pmd) argument 22 return __pte(pmd_val(pmd)); 30 #define pmd_wrprotect(pmd) pte_pmd(pte_wrprotect(pmd_pte(pmd))) 31 #define pmd_mkwrite_novma(pmd) pte_pmd(pte_mkwrite_novma(pmd_pte(pmd))) 32 #define pmd_mkdirty(pmd) pte_pmd(pte_mkdirty(pmd_pte(pmd))) 33 #define pmd_mkold(pmd) pte_pmd(pte_mkold(pmd_pte(pmd))) 49 pmd_modify(pmd_t pmd, pgprot_t newprot) argument 58 set_pmd_at(struct mm_struct *mm, unsigned long addr, pmd_t *pmdp, pmd_t pmd) argument [all...] |
H A D | page.h | 58 unsigned long pmd; member in struct:__anon3 61 #define pmd_val(x) ((x).pmd)
|
H A D | pgalloc.h | 37 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) argument 46 set_pmd(pmd, __pmd((unsigned long)pte)); 49 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte_page) argument 51 set_pmd(pmd, __pmd((unsigned long)page_address(pte_page))); 80 #define __pud_free_tlb(tlb, pmd, addr) pud_free((tlb)->mm, pmd) 91 #define __pmd_free_tlb(tlb, pmd, addr) pmd_free((tlb)->mm, pmd)
|
H A D | pgtable-levels.h | 138 * 3rd level paging: pmd 141 pr_crit("%s:%d: bad pmd %08lx.\n", __FILE__, __LINE__, pmd_val(e)) 143 #define pmd_pfn(pmd) ((pmd_val(pmd) & PMD_MASK) >> PAGE_SHIFT) 154 * In 3+ level paging (pgd -> pmd -> pte), pmd_* macros work on pmd 160 #define pmd_page_vaddr(pmd) (pmd_val(pmd) & PAGE_MASK) 161 #define pmd_pfn(pmd) ((pmd_val(pmd) [all...] |
/linux-master/arch/arc/mm/ |
H A D | fault.c | 35 pmd_t *pmd, *pmd_k; local 59 pmd = pmd_offset(pud, address); 63 if (!pmd_present(*pmd)) 64 set_pmd(pmd, *pmd_k);
|
H A D | tlb.c | 531 pmd_t *pmd) 533 pte_t pte = __pte(pmd_val(*pmd)); 530 update_mmu_cache_pmd(struct vm_area_struct *vma, unsigned long addr, pmd_t *pmd) argument
|
/linux-master/arch/arm/kernel/ |
H A D | traps.c | 765 void __pmd_error(const char *file, int line, pmd_t pmd) argument 767 pr_err("%s:%d: bad pmd %08llx.\n", file, line, (long long)pmd_val(pmd));
|
/linux-master/arch/arm/lib/ |
H A D | uaccess_with_memcpy.c | 28 pmd_t *pmd; local 45 pmd = pmd_offset(pud, addr); 46 if (unlikely(pmd_none(*pmd))) 50 * A pmd can be bad if it refers to a HugeTLB or THP page. 52 * Both THP and HugeTLB pages have the same pmd layout 59 if (unlikely(pmd_thp_or_huge(*pmd))) { 62 if (unlikely(!pmd_thp_or_huge(*pmd) 63 || pmd_hugewillfault(*pmd))) { 73 if (unlikely(pmd_bad(*pmd))) 76 pte = pte_offset_map_lock(current->mm, pmd, add [all...] |
/linux-master/arch/arm/mach-sa1100/ |
H A D | assabet.c | 606 pmd_t *pmd; local 608 pmd = pmd_off_k(virt); 609 *pmd = __pmd(phys | prot); 610 flush_pmd_entry(pmd);
|
/linux-master/arch/arm/mm/ |
H A D | dump.c | 216 }, { /* pmd */ 310 static void walk_pte(struct pg_state *st, pmd_t *pmd, unsigned long start, argument 313 pte_t *pte = pte_offset_kernel(pmd, 0); 323 static const char *get_domain_name(pmd_t *pmd) argument 326 switch (pmd_val(*pmd) & PMD_DOMAIN_MASK) { 344 pmd_t *pmd = pmd_offset(pud, 0); local 349 for (i = 0; i < PTRS_PER_PMD; i++, pmd++) { 351 domain = get_domain_name(pmd); 352 if (pmd_none(*pmd) || pmd_leaf(*pmd) || !pmd_presen [all...] |