Home
last modified time | relevance | path

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

123456789

/arch/powerpc/include/asm/
Dpgalloc-32.h9 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 …]
Dpgalloc-64.h65 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/
Dpgalloc.h58 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/
Dpgalloc.h16 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/
Didmap.c16 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/
Dhugetlbpage.c29 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/
Dpgalloc.h63 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 …]
Dpgtable.h38 #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/
Dmotorola_pgalloc.h70 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 …]
Dsun3_pgtable.h121 #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 …]
Dmcf_pgalloc.h36 #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/
Dpgalloc.h14 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/
Dpgalloc.h13 #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/
Dpgalloc.h41 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/
Dpgd.c80 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/
Dhibernate.c50 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/
Dhibernate_32.c61 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/
Dinit_64.c175 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/
Dpgalloc.h22 #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/
Dpgalloc.h13 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/
Dpgalloc.h65 #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/
Dtlb_hash32.c93 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/
Dhugetlbpage.c44 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/
Dpgalloc.h8 #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/
Dmem.c94 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 …]

123456789