/arch/powerpc/include/asm/ |
D | pgalloc-32.h | 9 extern void __bad_pte(pmd_t *pmd); 24 #define pmd_populate_kernel(mm, pmd, pte) \ argument 25 (pmd_val(*(pmd)) = __pa(pte) | _PMD_PRESENT) 26 #define pmd_populate(mm, pmd, pte) \ argument 27 (pmd_val(*(pmd)) = (page_to_pfn(pte) << PAGE_SHIFT) | _PMD_PRESENT) 28 #define pmd_pgtable(pmd) pmd_page(pmd) argument 30 #define pmd_populate_kernel(mm, pmd, pte) \ argument 31 (pmd_val(*(pmd)) = (unsigned long)pte | _PMD_PRESENT) 32 #define pmd_populate(mm, pmd, pte) \ argument 33 (pmd_val(*(pmd)) = (unsigned long)lowmem_page_address(pte) | _PMD_PRESENT) [all …]
|
D | pgalloc-64.h | 65 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument 67 pud_set(pud, (unsigned long)pmd); in pud_populate() 70 #define pmd_populate(mm, pmd, pte_page) \ argument 71 pmd_populate_kernel(mm, pmd, page_address(pte_page)) 72 #define pmd_populate_kernel(mm, pmd, pte) pmd_set(pmd, (unsigned long)(pte)) argument 73 #define pmd_pgtable(pmd) pmd_page(pmd) argument 78 #define pud_populate(mm, pud, pmd) pud_set(pud, (unsigned long)pmd) argument 80 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, in pmd_populate_kernel() argument 83 pmd_set(pmd, (unsigned long)pte); in pmd_populate_kernel() 86 #define pmd_populate(mm, pmd, pte_page) \ argument [all …]
|
/arch/parisc/include/asm/ |
D | pgalloc.h | 58 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument 61 (__u32)(__pa((unsigned long)pmd) >> PxD_VALUE_SHIFT)); in pgd_populate() 66 pmd_t *pmd = (pmd_t *)__get_free_pages(GFP_KERNEL|__GFP_REPEAT, in pmd_alloc_one() local 68 if (pmd) in pmd_alloc_one() 69 memset(pmd, 0, PAGE_SIZE<<PMD_ORDER); in pmd_alloc_one() 70 return pmd; in pmd_alloc_one() 73 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument 76 if(pmd_flag(*pmd) & PxD_FLAG_ATTACHED) in pmd_free() 81 free_pages((unsigned long)pmd, PMD_ORDER); in pmd_free() 95 #define pgd_populate(mm, pmd, pte) BUG() argument [all …]
|
/arch/mips/include/asm/ |
D | pgalloc.h | 16 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, in pmd_populate_kernel() argument 19 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel() 22 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument 25 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate() 27 #define pmd_pgtable(pmd) pmd_page(pmd) argument 36 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument 38 set_pud(pud, __pud((unsigned long)pmd)); in pud_populate() 111 pmd_t *pmd; in pmd_alloc_one() local 113 pmd = (pmd_t *) __get_free_pages(GFP_KERNEL|__GFP_REPEAT, PMD_ORDER); in pmd_alloc_one() 114 if (pmd) in pmd_alloc_one() [all …]
|
/arch/arm/mm/ |
D | idmap.c | 16 pmd_t *pmd; in idmap_add_pmd() local 20 pmd = pmd_alloc_one(&init_mm, addr); in idmap_add_pmd() 21 if (!pmd) { in idmap_add_pmd() 25 pud_populate(&init_mm, pud, pmd); in idmap_add_pmd() 26 pmd += pmd_index(addr); in idmap_add_pmd() 28 pmd = pmd_offset(pud, addr); in idmap_add_pmd() 32 *pmd = __pmd((addr & PMD_MASK) | prot); in idmap_add_pmd() 33 flush_pmd_entry(pmd); in idmap_add_pmd() 34 } while (pmd++, addr = next, addr != end); in idmap_add_pmd() 40 pmd_t *pmd = pmd_offset(pud, addr); in idmap_add_pmd() local [all …]
|
/arch/sh/mm/ |
D | hugetlbpage.c | 29 pmd_t *pmd; in huge_pte_alloc() local 36 pmd = pmd_alloc(mm, pud, addr); in huge_pte_alloc() 37 if (pmd) in huge_pte_alloc() 38 pte = pte_alloc_map(mm, NULL, pmd, addr); in huge_pte_alloc() 49 pmd_t *pmd; in huge_pte_offset() local 56 pmd = pmd_offset(pud, addr); in huge_pte_offset() 57 if (pmd) in huge_pte_offset() 58 pte = pte_offset_map(pmd, addr); in huge_pte_offset() 76 int pmd_huge(pmd_t pmd) in pmd_huge() argument 87 pmd_t *pmd, int write) in follow_huge_pmd() argument
|
/arch/x86/include/asm/ |
D | pgalloc.h | 63 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument 66 set_pmd(pmd, __pmd(__pa(pte) | _PAGE_TABLE)); in pmd_populate_kernel() 69 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument 75 set_pmd(pmd, __pmd(((pteval_t)pfn << PAGE_SHIFT) | _PAGE_TABLE)); in pmd_populate() 78 #define pmd_pgtable(pmd) pmd_page(pmd) argument 86 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument 88 BUG_ON((unsigned long)pmd & (PAGE_SIZE-1)); in pmd_free() 89 free_page((unsigned long)pmd); in pmd_free() 92 extern void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd); 94 static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, in __pmd_free_tlb() argument [all …]
|
D | pgtable.h | 38 #define set_pmd_at(mm, addr, pmdp, pmd) native_set_pmd_at(mm, addr, pmdp, pmd) argument 43 #define set_pmd(pmdp, pmd) native_set_pmd(pmdp, pmd) argument 59 #define pmd_clear(pmd) native_pmd_clear(pmd) argument 100 static inline int pmd_young(pmd_t pmd) in pmd_young() argument 102 return pmd_flags(pmd) & _PAGE_ACCESSED; in pmd_young() 140 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() argument 142 return (pmd_val(pmd) & PTE_PFN_MASK) >> PAGE_SHIFT; in pmd_pfn() 158 static inline int pmd_trans_splitting(pmd_t pmd) in pmd_trans_splitting() argument 160 return pmd_val(pmd) & _PAGE_SPLITTING; in pmd_trans_splitting() 163 static inline int pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() argument [all …]
|
/arch/m68k/include/asm/ |
D | motorola_pgalloc.h | 70 static inline int pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument 72 return free_pointer_table(pmd); in pmd_free() 75 static inline int __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, in __pmd_free_tlb() argument 78 return free_pointer_table(pmd); in __pmd_free_tlb() 93 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument 95 pmd_set(pmd, pte); in pmd_populate_kernel() 98 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t page) in pmd_populate() argument 100 pmd_set(pmd, page_address(page)); in pmd_populate() 102 #define pmd_pgtable(pmd) pmd_page(pmd) argument 104 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument [all …]
|
D | sun3_pgtable.h | 121 #define __pmd_page(pmd) \ argument 122 ((unsigned long) __va (pmd_val (pmd) & PAGE_MASK)) 136 #define pmd_page(pmd) virt_to_page(__pmd_page(pmd)) argument 139 static inline int pmd_none2 (pmd_t *pmd) { return !pmd_val (*pmd); } in pmd_none2() argument 140 #define pmd_none(pmd) pmd_none2(&(pmd)) argument 142 static inline int pmd_bad2 (pmd_t *pmd) { return 0; } in pmd_bad2() argument 143 #define pmd_bad(pmd) pmd_bad2(&(pmd)) argument 144 static inline int pmd_present2 (pmd_t *pmd) { return pmd_val (*pmd) & SUN3_PMD_VALID; } in pmd_present2() argument 146 #define pmd_present(pmd) (!pmd_none2(&(pmd))) argument 219 #define pte_offset_kernel(pmd, address) ((pte_t *) __pmd_page(*pmd) + pte_index(address)) argument [all …]
|
D | mcf_pgalloc.h | 36 #define pmd_populate(mm, pmd, page) (pmd_val(*pmd) = \ argument 39 #define pmd_populate_kernel(mm, pmd, pte) (pmd_val(*pmd) = (unsigned long)(pte)) argument 41 #define pmd_pgtable(pmd) pmd_page(pmd) argument 49 #define __pmd_free_tlb(tlb, pmd, address) do { } while (0) argument 81 #define pmd_free(mm, pmd) BUG() argument 100 #define pgd_populate(mm, pmd, pte) BUG() argument
|
/arch/alpha/include/asm/ |
D | pgalloc.h | 14 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) in pmd_populate() argument 16 pmd_set(pmd, (pte_t *)(page_to_pa(pte) + PAGE_OFFSET)); in pmd_populate() 18 #define pmd_pgtable(pmd) pmd_page(pmd) argument 21 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument 23 pmd_set(pmd, pte); in pmd_populate_kernel() 27 pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument 29 pgd_set(pgd, pmd); in pgd_populate() 48 pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument 50 free_page((unsigned long)pmd); in pmd_free()
|
/arch/um/include/asm/ |
D | pgalloc.h | 13 #define pmd_populate_kernel(mm, pmd, pte) \ argument 14 set_pmd(pmd, __pmd(_PAGE_TABLE + (unsigned long) __pa(pte))) 16 #define pmd_populate(mm, pmd, pte) \ argument 17 set_pmd(pmd, __pmd(_PAGE_TABLE + \ 20 #define pmd_pgtable(pmd) pmd_page(pmd) argument 50 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument 52 free_page((unsigned long)pmd); in pmd_free()
|
/arch/tile/include/asm/ |
D | pgalloc.h | 41 static inline void set_pmd(pmd_t *pmdp, pmd_t pmd) in set_pmd() argument 44 set_pte(pmdp, pmd); in set_pmd() 46 set_pte(&pmdp->pud.pgd, pmd.pud.pgd); in set_pmd() 51 pmd_t *pmd, pte_t *ptep) in pmd_populate_kernel() argument 53 set_pmd(pmd, ptfn_pmd(__pa(ptep) >> HV_LOG2_PAGE_TABLE_ALIGN, in pmd_populate_kernel() 57 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument 60 set_pmd(pmd, ptfn_pmd(HV_PFN_TO_PTFN(page_to_pfn(page)), in pmd_populate() 74 #define pmd_pgtable(pmd) pmd_page(pmd) argument 101 void shatter_pmd(pmd_t *pmd); 112 #define pud_populate(mm, pud, pmd) \ argument [all …]
|
/arch/unicore32/mm/ |
D | pgd.c | 80 pmd_t *pmd; in free_pgd_slow() local 87 pmd = pmd_off(pgd, 0); in free_pgd_slow() 88 if (pmd_none(*pmd)) in free_pgd_slow() 90 if (pmd_bad(*pmd)) { in free_pgd_slow() 91 pmd_ERROR(*pmd); in free_pgd_slow() 92 pmd_clear(pmd); in free_pgd_slow() 96 pte = pmd_pgtable(*pmd); in free_pgd_slow() 97 pmd_clear(pmd); in free_pgd_slow() 99 pmd_free(mm, pmd); in free_pgd_slow()
|
/arch/unicore32/kernel/ |
D | hibernate.c | 50 static pte_t *resume_one_page_table_init(pmd_t *pmd) in resume_one_page_table_init() argument 52 if (pmd_none(*pmd)) { in resume_one_page_table_init() 57 set_pmd(pmd, __pmd(__pa(page_table) | _PAGE_KERNEL_TABLE)); in resume_one_page_table_init() 59 BUG_ON(page_table != pte_offset_kernel(pmd, 0)); in resume_one_page_table_init() 64 return pte_offset_kernel(pmd, 0); in resume_one_page_table_init() 76 pmd_t *pmd; in resume_physical_mapping_init() local 85 pmd = resume_one_md_table_init(pgd); in resume_physical_mapping_init() 86 if (!pmd) in resume_physical_mapping_init() 92 for (pmd_idx = 0; pmd_idx < PTRS_PER_PMD; pmd++, pmd_idx++) { in resume_physical_mapping_init() 101 pte = resume_one_page_table_init(pmd); in resume_physical_mapping_init()
|
/arch/x86/power/ |
D | hibernate_32.c | 61 static pte_t *resume_one_page_table_init(pmd_t *pmd) in resume_one_page_table_init() argument 63 if (pmd_none(*pmd)) { in resume_one_page_table_init() 68 set_pmd(pmd, __pmd(__pa(page_table) | _PAGE_TABLE)); in resume_one_page_table_init() 70 BUG_ON(page_table != pte_offset_kernel(pmd, 0)); in resume_one_page_table_init() 75 return pte_offset_kernel(pmd, 0); in resume_one_page_table_init() 87 pmd_t *pmd; in resume_physical_mapping_init() local 96 pmd = resume_one_md_table_init(pgd); in resume_physical_mapping_init() 97 if (!pmd) in resume_physical_mapping_init() 103 for (pmd_idx = 0; pmd_idx < PTRS_PER_PMD; pmd++, pmd_idx++) { in resume_physical_mapping_init() 112 set_pmd(pmd, pfn_pmd(pfn, PAGE_KERNEL_LARGE_EXEC)); in resume_physical_mapping_init() [all …]
|
/arch/x86/mm/ |
D | init_64.c | 175 pmd_t *pmd = (pmd_t *) spp_getpage(); in fill_pmd() local 176 pud_populate(&init_mm, pud, pmd); in fill_pmd() 177 if (pmd != pmd_offset(pud, 0)) in fill_pmd() 179 pmd, pmd_offset(pud, 0)); in fill_pmd() 184 static pte_t *fill_pte(pmd_t *pmd, unsigned long vaddr) in fill_pte() argument 186 if (pmd_none(*pmd)) { in fill_pte() 188 pmd_populate_kernel(&init_mm, pmd, pte); in fill_pte() 189 if (pte != pte_offset_kernel(pmd, 0)) in fill_pte() 192 return pte_offset_kernel(pmd, vaddr); in fill_pte() 198 pmd_t *pmd; in set_pte_vaddr_pud() local [all …]
|
/arch/mn10300/include/asm/ |
D | pgalloc.h | 22 #define pmd_populate_kernel(mm, pmd, pte) \ argument 23 set_pmd(pmd, __pmd(__pa(pte) | _PAGE_TABLE)) 26 void pmd_populate(struct mm_struct *mm, pmd_t *pmd, struct page *pte) in pmd_populate() argument 28 set_pmd(pmd, __pmd((page_to_pfn(pte) << PAGE_SHIFT) | _PAGE_TABLE)); in pmd_populate() 30 #define pmd_pgtable(pmd) pmd_page(pmd) argument
|
/arch/sh/include/asm/ |
D | pgalloc.h | 13 extern void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd); 15 extern void pmd_free(struct mm_struct *mm, pmd_t *pmd); 18 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, in pmd_populate_kernel() argument 21 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel() 24 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument 27 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate() 29 #define pmd_pgtable(pmd) pmd_page(pmd) argument
|
/arch/s390/include/asm/ |
D | pgalloc.h | 65 #define pud_populate(mm, pud, pmd) BUG() argument 97 #define pmd_free(mm, pmd) crst_table_free(mm, (unsigned long *) pmd) argument 104 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument 106 pud_val(*pud) = _REGION3_ENTRY | __pa(pmd); in pud_populate() 121 pmd_t *pmd, pgtable_t pte) in pmd_populate() argument 123 pmd_val(*pmd) = _SEGMENT_ENTRY + __pa(pte); in pmd_populate() 126 #define pmd_populate_kernel(mm, pmd, pte) pmd_populate(mm, pmd, pte) argument 128 #define pmd_pgtable(pmd) \ argument 129 (pgtable_t)(pmd_val(pmd) & -sizeof(pte_t)*PTRS_PER_PTE)
|
/arch/powerpc/mm/ |
D | tlb_hash32.c | 93 pmd_t *pmd; in flush_range() local 106 pmd = pmd_offset(pud_offset(pgd_offset(mm, start), start), start); in flush_range() 111 if (!pmd_none(*pmd)) { in flush_range() 113 flush_hash_pages(ctx, start, pmd_val(*pmd), count); in flush_range() 118 ++pmd; in flush_range() 157 pmd_t *pmd; in flush_tlb_page() local 164 pmd = pmd_offset(pud_offset(pgd_offset(mm, vmaddr), vmaddr), vmaddr); in flush_tlb_page() 165 if (!pmd_none(*pmd)) in flush_tlb_page() 166 flush_hash_pages(mm->context.id, vmaddr, pmd_val(*pmd), 1); in flush_tlb_page()
|
/arch/mips/mm/ |
D | hugetlbpage.c | 44 pmd_t *pmd = NULL; in huge_pte_offset() local 50 pmd = pmd_offset(pud, addr); in huge_pte_offset() 52 return (pte_t *) pmd; in huge_pte_offset() 78 int pmd_huge(pmd_t pmd) in pmd_huge() argument 80 return (pmd_val(pmd) & _PAGE_HUGE) != 0; in pmd_huge() 90 pmd_t *pmd, int write) in follow_huge_pmd() argument 94 page = pte_page(*(pte_t *)pmd); in follow_huge_pmd()
|
/arch/m32r/include/asm/ |
D | pgalloc.h | 8 #define pmd_populate_kernel(mm, pmd, pte) \ argument 9 set_pmd(pmd, __pmd(_PAGE_TABLE + __pa(pte))) 11 static __inline__ void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument 14 set_pmd(pmd, __pmd(_PAGE_TABLE + page_to_phys(pte))); in pmd_populate() 16 #define pmd_pgtable(pmd) pmd_page(pmd) argument 72 #define pgd_populate(mm, pmd, pte) BUG() argument
|
/arch/um/kernel/ |
D | mem.c | 94 static void __init one_page_table_init(pmd_t *pmd) in one_page_table_init() argument 96 if (pmd_none(*pmd)) { in one_page_table_init() 98 set_pmd(pmd, __pmd(_KERNPG_TABLE + in one_page_table_init() 100 if (pte != pte_offset_kernel(pmd, 0)) in one_page_table_init() 120 pmd_t *pmd; in fixrange_init() local 133 pmd = pmd_offset(pud, vaddr); in fixrange_init() 134 for (; (j < PTRS_PER_PMD) && (vaddr < end); pmd++, j++) { in fixrange_init() 135 one_page_table_init(pmd); in fixrange_init() 165 pmd_t *pmd; in init_highmem() local 177 pmd = pmd_offset(pud, vaddr); in init_highmem() [all …]
|