Home
last modified time | relevance | path

Searched refs:pgd (Results 1 – 200 of 367) sorted by relevance

12

/linux-4.4.14/include/asm-generic/
Dpgtable-nopud.h13 typedef struct { pgd_t pgd; } pud_t; member
25 static inline int pgd_none(pgd_t pgd) { return 0; } in pgd_none() argument
26 static inline int pgd_bad(pgd_t pgd) { return 0; } in pgd_bad() argument
27 static inline int pgd_present(pgd_t pgd) { return 1; } in pgd_present() argument
28 static inline void pgd_clear(pgd_t *pgd) { } in pgd_clear() argument
29 #define pud_ERROR(pud) (pgd_ERROR((pud).pgd))
31 #define pgd_populate(mm, pgd, pud) do { } while (0) argument
38 static inline pud_t * pud_offset(pgd_t * pgd, unsigned long address) in pud_offset() argument
40 return (pud_t *)pgd; in pud_offset()
43 #define pud_val(x) (pgd_val((x).pgd))
[all …]
D4level-fixup.h18 #define pud_alloc(mm, pgd, address) (pgd) argument
19 #define pud_offset(pgd, start) (pgd) argument
/linux-4.4.14/arch/x86/mm/
Dpgtable.c87 static inline void pgd_list_add(pgd_t *pgd) in pgd_list_add() argument
89 struct page *page = virt_to_page(pgd); in pgd_list_add()
94 static inline void pgd_list_del(pgd_t *pgd) in pgd_list_del() argument
96 struct page *page = virt_to_page(pgd); in pgd_list_del()
105 static void pgd_set_mm(pgd_t *pgd, struct mm_struct *mm) in pgd_set_mm() argument
107 BUILD_BUG_ON(sizeof(virt_to_page(pgd)->index) < sizeof(mm)); in pgd_set_mm()
108 virt_to_page(pgd)->index = (pgoff_t)mm; in pgd_set_mm()
116 static void pgd_ctor(struct mm_struct *mm, pgd_t *pgd) in pgd_ctor() argument
124 clone_pgd_range(pgd + KERNEL_PGD_BOUNDARY, in pgd_ctor()
131 pgd_set_mm(pgd, mm); in pgd_ctor()
[all …]
Dinit_64.c106 pgd_t *pgd = pgd_page + pgd_index(addr) + off; in kernel_ident_mapping_init() local
113 if (pgd_present(*pgd)) { in kernel_ident_mapping_init()
114 pud = pud_offset(pgd, 0); in kernel_ident_mapping_init()
127 set_pgd(pgd, __pgd(__pa(pud) | _KERNPG_TABLE)); in kernel_ident_mapping_init()
184 pgd_t *pgd; in sync_global_pgds() local
187 pgd = (pgd_t *)page_address(page) + pgd_index(address); in sync_global_pgds()
192 if (!pgd_none(*pgd_ref) && !pgd_none(*pgd)) in sync_global_pgds()
193 BUG_ON(pgd_page_vaddr(*pgd) in sync_global_pgds()
197 if (pgd_none(*pgd_ref) && !pgd_none(*pgd)) in sync_global_pgds()
198 pgd_clear(pgd); in sync_global_pgds()
[all …]
Dfault.c194 static inline pmd_t *vmalloc_sync_one(pgd_t *pgd, unsigned long address) in vmalloc_sync_one() argument
201 pgd += index; in vmalloc_sync_one()
202 pgd_k = init_mm.pgd + index; in vmalloc_sync_one()
212 pud = pud_offset(pgd, address); in vmalloc_sync_one()
328 pgd_t *pgd = &base[pgd_index(address)]; in dump_pagetable() local
333 printk("*pdpt = %016Lx ", pgd_val(*pgd)); in dump_pagetable()
334 if (!low_pfn(pgd_val(*pgd) >> PAGE_SHIFT) || !pgd_present(*pgd)) in dump_pagetable()
337 pmd = pmd_offset(pud_offset(pgd, address), address); in dump_pagetable()
369 pgd_t *pgd, *pgd_ref; in vmalloc_fault() local
385 pgd = pgd_offset(current->active_mm, address); in vmalloc_fault()
[all …]
Dinit_32.c69 static pmd_t * __init one_md_table_init(pgd_t *pgd) in one_md_table_init() argument
75 if (!(pgd_val(*pgd) & _PAGE_PRESENT)) { in one_md_table_init()
78 set_pgd(pgd, __pgd(__pa(pmd_table) | _PAGE_PRESENT)); in one_md_table_init()
79 pud = pud_offset(pgd, 0); in one_md_table_init()
85 pud = pud_offset(pgd, 0); in one_md_table_init()
211 pgd_t *pgd; in page_table_range_init() local
223 pgd = pgd_base + pgd_idx; in page_table_range_init()
225 for ( ; (pgd_idx < PTRS_PER_PGD) && (vaddr != end); pgd++, pgd_idx++) { in page_table_range_init()
226 pmd = one_md_table_init(pgd); in page_table_range_init()
262 pgd_t *pgd; in kernel_physical_mapping_init() local
[all …]
Dpgtable_32.c29 pgd_t *pgd; in set_pte_vaddr() local
34 pgd = swapper_pg_dir + pgd_index(vaddr); in set_pte_vaddr()
35 if (pgd_none(*pgd)) { in set_pte_vaddr()
39 pud = pud_offset(pgd, vaddr); in set_pte_vaddr()
Dgup.c226 static int gup_pud_range(pgd_t pgd, unsigned long addr, unsigned long end, in gup_pud_range() argument
232 pudp = pud_offset(&pgd, addr); in gup_pud_range()
294 pgd_t pgd = *pgdp; in __get_user_pages_fast() local
297 if (pgd_none(pgd)) in __get_user_pages_fast()
299 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in __get_user_pages_fast()
366 pgd_t pgd = *pgdp; in get_user_pages_fast() local
369 if (pgd_none(pgd)) in get_user_pages_fast()
371 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in get_user_pages_fast()
Dpageattr.c33 pgd_t *pgd; member
327 pte_t *lookup_address_in_pgd(pgd_t *pgd, unsigned long address, in lookup_address_in_pgd() argument
335 if (pgd_none(*pgd)) in lookup_address_in_pgd()
338 pud = pud_offset(pgd, address); in lookup_address_in_pgd()
376 if (cpa->pgd) in _lookup_address_cpa()
377 return lookup_address_in_pgd(cpa->pgd + pgd_index(address), in _lookup_address_cpa()
389 pgd_t *pgd; in lookup_pmd_address() local
392 pgd = pgd_offset_k(address); in lookup_pmd_address()
393 if (pgd_none(*pgd)) in lookup_pmd_address()
396 pud = pud_offset(pgd, address); in lookup_pmd_address()
[all …]
/linux-4.4.14/arch/mn10300/mm/
Dpgtable.c37 pgd_t *pgd; in set_pmd_pfn() local
49 pgd = swapper_pg_dir + pgd_index(vaddr); in set_pmd_pfn()
50 if (pgd_none(*pgd)) { in set_pmd_pfn()
54 pud = pud_offset(pgd, vaddr); in set_pmd_pfn()
108 static inline void pgd_list_add(pgd_t *pgd) in pgd_list_add() argument
110 struct page *page = virt_to_page(pgd); in pgd_list_add()
118 static inline void pgd_list_del(pgd_t *pgd) in pgd_list_del() argument
120 struct page *next, **pprev, *page = virt_to_page(pgd); in pgd_list_del()
128 void pgd_ctor(void *pgd) in pgd_ctor() argument
135 memcpy((pgd_t *)pgd + USER_PTRS_PER_PGD, in pgd_ctor()
[all …]
Dfault.c70 pgd_t *pgd;
74 pgd = pgdir + __pgd_offset(address);
76 pgd, (long long) pgd_val(*pgd));
78 if (!pgd_present(*pgd)) {
82 pmd = pmd_offset(pgd, address);
386 pgd_t *pgd, *pgd_k; in do_page_fault() local
391 pgd_k = init_mm.pgd + index; in do_page_fault()
404 pgd = (pgd_t *) PTBR + index; in do_page_fault()
405 pud = pud_offset(pgd, address); in do_page_fault()
Dcache-inv-icache.c32 pgd_t *pgd; in flush_icache_page_range() local
43 pgd = pgd_offset(current->mm, start); in flush_icache_page_range()
44 if (!pgd || !pgd_val(*pgd)) in flush_icache_page_range()
47 pud = pud_offset(pgd, start); in flush_icache_page_range()
Dcache-flush-icache.c54 pgd_t *pgd; in flush_icache_page_range() local
65 pgd = pgd_offset(current->mm, start); in flush_icache_page_range()
66 if (!pgd || !pgd_val(*pgd)) in flush_icache_page_range()
69 pud = pud_offset(pgd, start); in flush_icache_page_range()
/linux-4.4.14/arch/arm/mm/
Dpgd.c24 #define __pgd_free(pgd) kfree(pgd) argument
27 #define __pgd_free(pgd) free_pages((unsigned long)pgd, 2) argument
121 pgd_t *pgd; in pgd_free() local
129 pgd = pgd_base + pgd_index(0); in pgd_free()
130 if (pgd_none_or_clear_bad(pgd)) in pgd_free()
133 pud = pud_offset(pgd, 0); in pgd_free()
150 pgd_clear(pgd); in pgd_free()
157 for (pgd = pgd_base; pgd < pgd_base + PTRS_PER_PGD; pgd++) { in pgd_free()
158 if (pgd_none_or_clear_bad(pgd)) in pgd_free()
160 if (pgd_val(*pgd) & L_PGD_SWAPPER) in pgd_free()
[all …]
Didmap.c65 static void idmap_add_pud(pgd_t *pgd, unsigned long addr, unsigned long end, in idmap_add_pud() argument
68 pud_t *pud = pud_offset(pgd, addr); in idmap_add_pud()
77 static void identity_mapping_add(pgd_t *pgd, const char *text_start, in identity_mapping_add() argument
92 pgd += pgd_index(addr); in identity_mapping_add()
95 idmap_add_pud(pgd, addr, next, prot); in identity_mapping_add()
96 } while (pgd++, addr = next, addr != end); in identity_mapping_add()
Dfault.c61 pgd_t *pgd; in show_pte() local
66 pr_alert("pgd = %p\n", mm->pgd); in show_pte()
67 pgd = pgd_offset(mm, addr); in show_pte()
69 addr, (long long)pgd_val(*pgd)); in show_pte()
76 if (pgd_none(*pgd)) in show_pte()
79 if (pgd_bad(*pgd)) { in show_pte()
84 pud = pud_offset(pgd, addr); in show_pte()
426 pgd_t *pgd, *pgd_k; in do_translation_fault() local
438 pgd = cpu_get_pgd() + index; in do_translation_fault()
439 pgd_k = init_mm.pgd + index; in do_translation_fault()
[all …]
Dioremap.c142 pgd_t *pgd; in unmap_area_sections() local
147 pgd = pgd_offset_k(addr); in unmap_area_sections()
148 pud = pud_offset(pgd, addr); in unmap_area_sections()
190 pgd_t *pgd; in remap_area_sections() local
200 pgd = pgd_offset_k(addr); in remap_area_sections()
201 pud = pud_offset(pgd, addr); in remap_area_sections()
222 pgd_t *pgd; in remap_area_supersections() local
232 pgd = pgd_offset_k(virt); in remap_area_supersections()
233 pud = pud_offset(pgd, addr); in remap_area_supersections()
Ddump.c287 static void walk_pud(struct pg_state *st, pgd_t *pgd, unsigned long start) in walk_pud() argument
289 pud_t *pud = pud_offset(pgd, 0); in walk_pud()
305 pgd_t *pgd = swapper_pg_dir; in walk_pgd() local
314 for (i = 0; i < PTRS_PER_PGD; i++, pgd++) { in walk_pgd()
316 if (!pgd_none(*pgd)) { in walk_pgd()
317 walk_pud(&st, pgd, addr); in walk_pgd()
319 note_page(&st, addr, 1, pgd_val(*pgd)); in walk_pgd()
Dfault-armv.c96 pgd_t *pgd; in adjust_pte() local
102 pgd = pgd_offset(vma->vm_mm, address); in adjust_pte()
103 if (pgd_none_or_clear_bad(pgd)) in adjust_pte()
106 pud = pud_offset(pgd, address); in adjust_pte()
/linux-4.4.14/arch/powerpc/include/asm/
Dpgtable-ppc64-4k.h55 #define pgd_none(pgd) (!pgd_val(pgd)) argument
56 #define pgd_bad(pgd) (pgd_val(pgd) == 0) argument
57 #define pgd_present(pgd) (pgd_val(pgd) != 0) argument
59 #define pgd_page_vaddr(pgd) (pgd_val(pgd) & ~PGD_MASKED_BITS) argument
63 static inline pte_t pgd_pte(pgd_t pgd) in pgd_pte() argument
65 return __pte(pgd_val(pgd)); in pgd_pte()
72 extern struct page *pgd_page(pgd_t pgd);
Dmmu_context.h39 extern void set_context(unsigned long id, pgd_t *pgd);
67 tsk->thread.pgdir = next->pgd; in switch_mm()
72 get_paca()->pgd = next->pgd; in switch_mm()
125 get_paca()->pgd = NULL; in enter_lazy_tlb()
Dpgtable-ppc64-64k.h41 #define pgd_pte(pgd) (pud_pte(((pud_t){ pgd }))) argument
Dpage.h316 typedef struct { unsigned long pgd; } pgd_t; member
317 #define pgd_val(x) ((x).pgd)
400 int pgd_huge(pgd_t pgd);
403 #define pgd_huge(pgd) 0 argument
/linux-4.4.14/arch/frv/mm/
Dpgalloc.c89 static inline void pgd_list_add(pgd_t *pgd) in pgd_list_add() argument
91 struct page *page = virt_to_page(pgd); in pgd_list_add()
99 static inline void pgd_list_del(pgd_t *pgd) in pgd_list_del() argument
101 struct page *next, **pprev, *page = virt_to_page(pgd); in pgd_list_del()
109 void pgd_ctor(void *pgd) in pgd_ctor() argument
116 memcpy((pgd_t *) pgd + USER_PGDS_IN_LAST_PML4, in pgd_ctor()
123 pgd_list_add(pgd); in pgd_ctor()
125 memset(pgd, 0, USER_PGDS_IN_LAST_PML4 * sizeof(pgd_t)); in pgd_ctor()
129 void pgd_dtor(void *pgd) in pgd_dtor() argument
134 pgd_list_del(pgd); in pgd_dtor()
[all …]
Dfault.c299 pgd_t *pgd, *pgd_k; in do_page_fault() local
304 pgd = (pgd_t *) __get_TTBR(); in do_page_fault()
305 pgd = (pgd_t *)__va(pgd) + index; in do_page_fault()
306 pgd_k = ((pgd_t *)(init_mm.pgd)) + index; in do_page_fault()
320 pud = pud_offset(pgd, ear0); in do_page_fault()
/linux-4.4.14/arch/metag/include/asm/
Dmmu_context.h26 mm->context.pgd_base = (unsigned long) mm->pgd; in init_new_context()
54 static inline void load_pgd(pgd_t *pgd, int thread) in load_pgd() argument
68 metag_out32(__pa(pgd) & MMCU_TBLPHYS1_ADDR_BITS, phys1); in load_pgd()
75 load_pgd(next->pgd, hard_processor_id()); in switch_mmu()
81 if (prev->context.pgd_base != (unsigned long) prev->pgd) { in switch_mmu()
83 ((pgd_t *) prev->context.pgd_base)[i] = prev->pgd[i]; in switch_mmu()
85 prev->pgd = (pgd_t *)mmu_get_base(); in switch_mmu()
87 next->pgd = prev->pgd; in switch_mmu()
88 prev->pgd = (pgd_t *) prev->context.pgd_base; in switch_mmu()
91 next->pgd[i] = ((pgd_t *) next->context.pgd_base)[i]; in switch_mmu()
Dpgalloc.h19 static inline void pgd_ctor(pgd_t *pgd) in pgd_ctor() argument
21 memcpy(pgd + USER_PTRS_PER_PGD, in pgd_ctor()
31 pgd_t *pgd = (pgd_t *)get_zeroed_page(GFP_KERNEL); in pgd_alloc() local
32 if (pgd) in pgd_alloc()
33 pgd_ctor(pgd); in pgd_alloc()
34 return pgd; in pgd_alloc()
37 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
39 free_page((unsigned long)pgd); in pgd_free()
/linux-4.4.14/arch/sh/mm/
Dhugetlbpage.c27 pgd_t *pgd; in huge_pte_alloc() local
32 pgd = pgd_offset(mm, addr); in huge_pte_alloc()
33 if (pgd) { in huge_pte_alloc()
34 pud = pud_alloc(mm, pgd, addr); in huge_pte_alloc()
47 pgd_t *pgd; in huge_pte_offset() local
52 pgd = pgd_offset(mm, addr); in huge_pte_offset()
53 if (pgd) { in huge_pte_offset()
54 pud = pud_offset(pgd, addr); in huge_pte_offset()
Dfault.c60 pgd_t *pgd; in show_pte() local
63 pgd = mm->pgd; in show_pte()
65 pgd = get_TTB(); in show_pte()
67 if (unlikely(!pgd)) in show_pte()
68 pgd = swapper_pg_dir; in show_pte()
71 printk(KERN_ALERT "pgd = %p\n", pgd); in show_pte()
72 pgd += pgd_index(addr); in show_pte()
74 (u32)(sizeof(*pgd) * 2), (u64)pgd_val(*pgd)); in show_pte()
81 if (pgd_none(*pgd)) in show_pte()
84 if (pgd_bad(*pgd)) { in show_pte()
[all …]
Dgup.c139 static int gup_pud_range(pgd_t pgd, unsigned long addr, unsigned long end, in gup_pud_range() argument
145 pudp = pud_offset(&pgd, addr); in gup_pud_range()
188 pgd_t pgd = *pgdp; in __get_user_pages_fast() local
191 if (pgd_none(pgd)) in __get_user_pages_fast()
193 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in __get_user_pages_fast()
237 pgd_t pgd = *pgdp; in get_user_pages_fast() local
240 if (pgd_none(pgd)) in get_user_pages_fast()
242 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in get_user_pages_fast()
Dpgtable.c13 pgd_t *pgd = x; in pgd_ctor() local
15 memcpy(pgd + USER_PTRS_PER_PGD, in pgd_ctor()
37 void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
39 kmem_cache_free(pgd_cachep, pgd); in pgd_free()
Dtlbex_32.c25 pgd_t *pgd; in handle_tlbmiss() local
37 pgd = pgd_offset_k(address); in handle_tlbmiss()
42 pgd = pgd_offset(current->mm, address); in handle_tlbmiss()
45 pud = pud_offset(pgd, address); in handle_tlbmiss()
Dtlbex_64.c46 pgd_t *pgd; in handle_tlbmiss() local
53 pgd = pgd_offset_k(address); in handle_tlbmiss()
58 pgd = pgd_offset(current->mm, address); in handle_tlbmiss()
61 pud = pud_offset(pgd, address); in handle_tlbmiss()
Dinit.c47 pgd_t *pgd; in __get_pte_phys() local
51 pgd = pgd_offset_k(addr); in __get_pte_phys()
52 if (pgd_none(*pgd)) { in __get_pte_phys()
53 pgd_ERROR(*pgd); in __get_pte_phys()
57 pud = pud_alloc(NULL, pgd, addr); in __get_pte_phys()
161 pgd_t *pgd; in page_table_range_init() local
172 pgd = pgd_base + i; in page_table_range_init()
174 for ( ; (i < PTRS_PER_PGD) && (vaddr != end); pgd++, i++) { in page_table_range_init()
175 pud = (pud_t *)pgd; in page_table_range_init()
/linux-4.4.14/arch/parisc/include/asm/
Dpgalloc.h23 pgd_t *pgd = (pgd_t *)__get_free_pages(GFP_KERNEL, in pgd_alloc() local
25 pgd_t *actual_pgd = pgd; in pgd_alloc()
27 if (likely(pgd != NULL)) { in pgd_alloc()
28 memset(pgd, 0, PAGE_SIZE<<PGD_ALLOC_ORDER); in pgd_alloc()
37 + (__u32)(__pa((unsigned long)pgd) >> PxD_VALUE_SHIFT)); in pgd_alloc()
40 __pgd_val_set(*pgd, PxD_FLAG_ATTACHED); in pgd_alloc()
46 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
49 pgd -= PTRS_PER_PGD; in pgd_free()
51 free_pages((unsigned long)pgd, PGD_ALLOC_ORDER); in pgd_free()
58 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument
[all …]
Dpgtable.h324 #define pgd_page_vaddr(pgd) ((unsigned long) __va(pgd_address(pgd))) argument
325 #define pgd_page(pgd) virt_to_page((void *)pgd_page_vaddr(pgd)) argument
332 static inline void pgd_clear(pgd_t *pgd) { in pgd_clear() argument
334 if(pgd_flag(*pgd) & PxD_FLAG_ATTACHED) in pgd_clear()
339 __pgd_val_set(*pgd, 0); in pgd_clear()
347 static inline int pgd_none(pgd_t pgd) { return 0; } in pgd_none() argument
348 static inline int pgd_bad(pgd_t pgd) { return 0; } in pgd_bad() argument
349 static inline int pgd_present(pgd_t pgd) { return 1; } in pgd_present() argument
423 ((mm)->pgd + ((address) >> PGDIR_SHIFT))
Dpage.h45 typedef struct { __u32 pgd; } pgd_t; member
51 #define pgd_val(x) ((x).pgd + 0)
60 #define __pgd_val_set(x,n) (x).pgd = (n)
/linux-4.4.14/arch/um/kernel/
Dmem.c90 pgd_t *pgd; in fixrange_init() local
99 pgd = pgd_base + i; in fixrange_init()
101 for ( ; (i < PTRS_PER_PGD) && (vaddr < end); pgd++, i++) { in fixrange_init()
102 pud = pud_offset(pgd, vaddr); in fixrange_init()
118 pgd_t *pgd; in fixaddr_user_init() local
134 pgd = swapper_pg_dir + pgd_index(vaddr); in fixaddr_user_init()
135 pud = pud_offset(pgd, vaddr); in fixaddr_user_init()
187 pgd_t *pgd = (pgd_t *)__get_free_page(GFP_KERNEL); in pgd_alloc() local
189 if (pgd) { in pgd_alloc()
190 memset(pgd, 0, USER_PTRS_PER_PGD * sizeof(pgd_t)); in pgd_alloc()
[all …]
Dtlb.c251 static inline int update_pud_range(pgd_t *pgd, unsigned long addr, in update_pud_range() argument
259 pud = pud_offset(pgd, addr); in update_pud_range()
276 pgd_t *pgd; in fix_range_common() local
282 pgd = pgd_offset(mm, addr); in fix_range_common()
285 if (!pgd_present(*pgd)) { in fix_range_common()
286 if (force || pgd_newpage(*pgd)) { in fix_range_common()
288 pgd_mkuptodate(*pgd); in fix_range_common()
291 else ret = update_pud_range(pgd, addr, next, &hvc); in fix_range_common()
292 } while (pgd++, addr = next, ((addr < end_addr) && !ret)); in fix_range_common()
311 pgd_t *pgd; in flush_tlb_kernel_range_common() local
[all …]
/linux-4.4.14/arch/tile/mm/
Dpgtable.c100 pgd_t *pgd; in shatter_huge_page() local
112 pgd = swapper_pg_dir + pgd_index(addr); in shatter_huge_page()
113 pud = pud_offset(pgd, addr); in shatter_huge_page()
135 pgd = list_to_pgd(pos) + pgd_index(addr); in shatter_huge_page()
136 pud = pud_offset(pgd, addr); in shatter_huge_page()
168 static inline void pgd_list_add(pgd_t *pgd) in pgd_list_add() argument
170 list_add(pgd_to_list(pgd), &pgd_list); in pgd_list_add()
173 static inline void pgd_list_del(pgd_t *pgd) in pgd_list_del() argument
175 list_del(pgd_to_list(pgd)); in pgd_list_del()
181 static void pgd_ctor(pgd_t *pgd) in pgd_ctor() argument
[all …]
Dfault.c105 static inline pmd_t *vmalloc_sync_one(pgd_t *pgd, unsigned long address) in vmalloc_sync_one() argument
112 pgd += index; in vmalloc_sync_one()
113 pgd_k = init_mm.pgd + index; in vmalloc_sync_one()
118 pud = pud_offset(pgd, address); in vmalloc_sync_one()
137 static inline int vmalloc_fault(pgd_t *pgd, unsigned long address) in vmalloc_fault() argument
150 pmd_k = vmalloc_sync_one(pgd, address); in vmalloc_fault()
211 static int handle_migrating_pte(pgd_t *pgd, int fault_num, in handle_migrating_pte() argument
223 pgd += pgd_index(address); in handle_migrating_pte()
224 pud = pud_offset(pgd, address); in handle_migrating_pte()
274 pgd_t *pgd; in handle_page_fault() local
[all …]
Dhugetlbpage.c57 pgd_t *pgd; in huge_pte_alloc() local
62 pgd = pgd_offset(mm, addr); in huge_pte_alloc()
63 pud = pud_alloc(mm, pgd, addr); in huge_pte_alloc()
106 pgd_t *pgd; in huge_pte_offset() local
114 pgd = (pgd_t *)get_pte((pte_t *)mm->pgd, pgd_index(addr), 0); in huge_pte_offset()
117 pud = pud_offset(pgd, addr); in huge_pte_offset()
/linux-4.4.14/arch/hexagon/include/asm/
Dpgalloc.h36 pgd_t *pgd; in pgd_alloc() local
38 pgd = (pgd_t *)__get_free_page(GFP_KERNEL | __GFP_ZERO); in pgd_alloc()
48 memcpy(pgd, swapper_pg_dir, PTRS_PER_PGD*sizeof(pgd_t)); in pgd_alloc()
52 mm->context.ptbase = __pa(pgd); in pgd_alloc()
54 return pgd; in pgd_alloc()
57 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
59 free_page((unsigned long) pgd); in pgd_free()
135 pmdindex = (pgd_t *)pmd - mm->pgd; in pmd_populate_kernel()
136 ppmd = (pmd_t *)current->active_mm->pgd + pmdindex; in pmd_populate_kernel()
Dmmu_context.h77 next->pgd[l1] = init_mm.pgd[l1]; in switch_mm()
Dpage.h83 typedef struct { unsigned long pgd; } pgd_t; member
88 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/arch/mips/mm/
Dhugetlbpage.c27 pgd_t *pgd; in huge_pte_alloc() local
31 pgd = pgd_offset(mm, addr); in huge_pte_alloc()
32 pud = pud_alloc(mm, pgd, addr); in huge_pte_alloc()
41 pgd_t *pgd; in huge_pte_offset() local
45 pgd = pgd_offset(mm, addr); in huge_pte_offset()
46 if (pgd_present(*pgd)) { in huge_pte_offset()
47 pud = pud_offset(pgd, addr); in huge_pte_offset()
Dgup.c167 static int gup_pud_range(pgd_t pgd, unsigned long addr, unsigned long end, in gup_pud_range() argument
173 pudp = pud_offset(&pgd, addr); in gup_pud_range()
234 pgd_t pgd = *pgdp; in __get_user_pages_fast() local
237 if (pgd_none(pgd)) in __get_user_pages_fast()
239 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in __get_user_pages_fast()
284 pgd_t pgd = *pgdp; in get_user_pages_fast() local
287 if (pgd_none(pgd)) in get_user_pages_fast()
289 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in get_user_pages_fast()
Dpgtable-32.c38 pgd_t *pgd; in pagetable_init() local
64 pgd = swapper_pg_dir + __pgd_offset(vaddr); in pagetable_init()
65 pud = pud_offset(pgd, vaddr); in pagetable_init()
Dfault.c304 pgd_t *pgd, *pgd_k; in __do_page_fault() local
309 pgd = (pgd_t *) pgd_current[raw_smp_processor_id()] + offset; in __do_page_fault()
310 pgd_k = init_mm.pgd + offset; in __do_page_fault()
314 set_pgd(pgd, *pgd_k); in __do_page_fault()
316 pud = pud_offset(pgd, address); in __do_page_fault()
/linux-4.4.14/arch/metag/mm/
Dinit.c44 static void insert_gateway_page(pgd_t *pgd, unsigned long address) in insert_gateway_page() argument
50 BUG_ON(!pgd_present(*pgd)); in insert_gateway_page()
52 pud = pud_offset(pgd, address); in insert_gateway_page()
70 pgd_t *pgd; in user_gateway_init() local
74 pgd = swapper_pg_dir + offset; in user_gateway_init()
75 insert_gateway_page(pgd, address); in user_gateway_init()
85 pgd = (pgd_t *)mmu_get_base() + offset; in user_gateway_init()
86 insert_gateway_page(pgd, address); in user_gateway_init()
266 pgd_t *pgd; in allocate_pgtables() local
275 pgd = swapper_pg_dir + i; in allocate_pgtables()
[all …]
Dhugetlbpage.c62 pgd_t *pgd; in huge_pte_alloc() local
67 pgd = pgd_offset(mm, addr); in huge_pte_alloc()
68 pud = pud_offset(pgd, addr); in huge_pte_alloc()
71 pgd->pgd &= ~_PAGE_SZ_MASK; in huge_pte_alloc()
72 pgd->pgd |= _PAGE_SZHUGE; in huge_pte_alloc()
79 pgd_t *pgd; in huge_pte_offset() local
84 pgd = pgd_offset(mm, addr); in huge_pte_offset()
85 pud = pud_offset(pgd, addr); in huge_pte_offset()
Dfault.c69 pgd_t *pgd, *pgd_k; in do_page_fault() local
74 pgd = ((pgd_t *)mmu_get_base()) + offset; in do_page_fault()
78 if (!pgd_present(*pgd)) { in do_page_fault()
81 set_pgd(pgd, *pgd_k); in do_page_fault()
85 pud = pud_offset(pgd, address); in do_page_fault()
Dmmu-meta2.c23 pgd_t *pgd, entry; in mmu_read_first_level_page() local
47 pgd = (pgd_t *)mmu_get_base(); in mmu_read_first_level_page()
48 entry = pgd[offset]; in mmu_read_first_level_page()
/linux-4.4.14/arch/arm/kvm/
Dmmu.c157 static void clear_pgd_entry(struct kvm *kvm, pgd_t *pgd, phys_addr_t addr) in clear_pgd_entry() argument
159 pud_t *pud_table __maybe_unused = pud_offset(pgd, 0); in clear_pgd_entry()
160 pgd_clear(pgd); in clear_pgd_entry()
163 put_page(virt_to_page(pgd)); in clear_pgd_entry()
261 static void unmap_puds(struct kvm *kvm, pgd_t *pgd, in unmap_puds() argument
267 start_pud = pud = pud_offset(pgd, addr); in unmap_puds()
287 clear_pgd_entry(kvm, pgd, start_addr); in unmap_puds()
294 pgd_t *pgd; in unmap_range() local
298 pgd = pgdp + kvm_pgd_index(addr); in unmap_range()
301 if (!pgd_none(*pgd)) in unmap_range()
[all …]
/linux-4.4.14/arch/x86/power/
Dhibernate_32.c33 static pmd_t *resume_one_md_table_init(pgd_t *pgd) in resume_one_md_table_init() argument
43 set_pgd(pgd, __pgd(__pa(pmd_table) | _PAGE_PRESENT)); in resume_one_md_table_init()
44 pud = pud_offset(pgd, 0); in resume_one_md_table_init()
48 pud = pud_offset(pgd, 0); in resume_one_md_table_init()
84 pgd_t *pgd; in resume_physical_mapping_init() local
90 pgd = pgd_base + pgd_idx; in resume_physical_mapping_init()
93 for (; pgd_idx < PTRS_PER_PGD; pgd++, pgd_idx++) { in resume_physical_mapping_init()
94 pmd = resume_one_md_table_init(pgd); in resume_physical_mapping_init()
/linux-4.4.14/mm/kasan/
Dkasan_init.c84 static void __init zero_pud_populate(pgd_t *pgd, unsigned long addr, in zero_pud_populate() argument
87 pud_t *pud = pud_offset(pgd, addr); in zero_pud_populate()
120 pgd_t *pgd = pgd_offset_k(addr); in kasan_populate_zero_shadow() local
138 pgd_populate(&init_mm, pgd, kasan_zero_pud); in kasan_populate_zero_shadow()
139 pud = pud_offset(pgd, addr); in kasan_populate_zero_shadow()
146 if (pgd_none(*pgd)) { in kasan_populate_zero_shadow()
147 pgd_populate(&init_mm, pgd, in kasan_populate_zero_shadow()
150 zero_pud_populate(pgd, addr, next); in kasan_populate_zero_shadow()
151 } while (pgd++, addr = next, addr != end); in kasan_populate_zero_shadow()
/linux-4.4.14/arch/x86/kernel/
Dmachine_kexec_32.c73 free_page((unsigned long)image->arch.pgd); in machine_kexec_free_page_tables()
84 image->arch.pgd = (pgd_t *)get_zeroed_page(GFP_KERNEL); in machine_kexec_alloc_page_tables()
91 if (!image->arch.pgd || in machine_kexec_alloc_page_tables()
103 pgd_t *pgd, pmd_t *pmd, pte_t *pte, in machine_kexec_page_table_set_one() argument
108 pgd += pgd_index(vaddr); in machine_kexec_page_table_set_one()
110 if (!(pgd_val(*pgd) & _PAGE_PRESENT)) in machine_kexec_page_table_set_one()
111 set_pgd(pgd, __pgd(__pa(pmd) | _PAGE_PRESENT)); in machine_kexec_page_table_set_one()
113 pud = pud_offset(pgd, vaddr); in machine_kexec_page_table_set_one()
131 image->arch.pgd, pmd, image->arch.pte0, in machine_kexec_prepare_page_tables()
137 image->arch.pgd, pmd, image->arch.pte1, in machine_kexec_prepare_page_tables()
[all …]
Dhead64.c46 early_level4_pgt[i].pgd = 0; in reset_early_page_tables()
58 pgdval_t pgd, *pgd_p; in early_make_pgtable() local
67 pgd_p = &early_level4_pgt[pgd_index(address)].pgd; in early_make_pgtable()
68 pgd = *pgd_p; in early_make_pgtable()
75 if (pgd) in early_make_pgtable()
76 pud_p = (pudval_t *)((pgd & PTE_PFN_MASK) + __START_KERNEL_map - phys_base); in early_make_pgtable()
/linux-4.4.14/arch/m32r/include/asm/
Dpgtable-2level.h34 static inline int pgd_none(pgd_t pgd) { return 0; } in pgd_none() argument
35 static inline int pgd_bad(pgd_t pgd) { return 0; } in pgd_bad() argument
36 static inline int pgd_present(pgd_t pgd) { return 1; } in pgd_present() argument
54 #define pgd_page_vaddr(pgd) \ argument
55 ((unsigned long) __va(pgd_val(pgd) & PAGE_MASK))
58 #define pgd_page(pgd) (mem_map + ((pgd_val(pgd) >> PAGE_SHIFT) - PFN_BASE)) argument
Dpgalloc.h23 pgd_t *pgd = (pgd_t *)__get_free_page(GFP_KERNEL|__GFP_ZERO); in pgd_alloc() local
25 return pgd; in pgd_alloc()
28 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
30 free_page((unsigned long)pgd); in pgd_free()
Dpage.h28 typedef struct { unsigned long pgd; } pgd_t; member
36 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/arch/x86/platform/efi/
Defi_64.c83 int pgd; in efi_call_phys_prolog() local
94 for (pgd = 0; pgd < n_pgds; pgd++) { in efi_call_phys_prolog()
95 save_pgd[pgd] = *pgd_offset_k(pgd * PGDIR_SIZE); in efi_call_phys_prolog()
96 vaddress = (unsigned long)__va(pgd * PGDIR_SIZE); in efi_call_phys_prolog()
97 set_pgd(pgd_offset_k(pgd * PGDIR_SIZE), *pgd_offset_k(vaddress)); in efi_call_phys_prolog()
132 pgd_t *pgd = (pgd_t *)__va(real_mode_header->trampoline_pgd); in efi_sync_low_kernel_mappings() local
139 memcpy(pgd + pgd_index(PAGE_OFFSET), in efi_sync_low_kernel_mappings()
140 init_mm.pgd + pgd_index(PAGE_OFFSET), in efi_sync_low_kernel_mappings()
149 pgd_t *pgd; in efi_setup_page_tables() local
155 pgd = __va(efi_scratch.efi_pgt); in efi_setup_page_tables()
[all …]
/linux-4.4.14/arch/arm64/mm/
Dmmu.c195 static void alloc_init_pud(struct mm_struct *mm, pgd_t *pgd, in alloc_init_pud() argument
203 if (pgd_none(*pgd)) { in alloc_init_pud()
205 pgd_populate(mm, pgd, pud); in alloc_init_pud()
207 BUG_ON(pgd_bad(*pgd)); in alloc_init_pud()
209 pud = pud_offset(pgd, addr); in alloc_init_pud()
247 static void __create_mapping(struct mm_struct *mm, pgd_t *pgd, in __create_mapping() argument
260 alloc_init_pud(mm, pgd, addr, next, phys, prot, alloc); in __create_mapping()
262 } while (pgd++, addr = next, addr != end); in __create_mapping()
476 pgd_t *pgd; in kern_addr_valid() local
484 pgd = pgd_offset_k(addr); in kern_addr_valid()
[all …]
Dkasan_init.c60 static void __init kasan_early_pud_populate(pgd_t *pgd, in kasan_early_pud_populate() argument
67 if (pgd_none(*pgd)) in kasan_early_pud_populate()
68 pgd_populate(&init_mm, pgd, kasan_zero_pud); in kasan_early_pud_populate()
70 pud = pud_offset(pgd, addr); in kasan_early_pud_populate()
82 pgd_t *pgd; in kasan_map_early_shadow() local
84 pgd = pgd_offset_k(addr); in kasan_map_early_shadow()
87 kasan_early_pud_populate(pgd, addr, next); in kasan_map_early_shadow()
88 } while (pgd++, addr = next, addr != end); in kasan_map_early_shadow()
Dpgd.c41 void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
44 free_page((unsigned long)pgd); in pgd_free()
46 kmem_cache_free(pgd_cache, pgd); in pgd_free()
Ddump.c278 static void walk_pud(struct pg_state *st, pgd_t *pgd, unsigned long start) in walk_pud() argument
280 pud_t *pud = pud_offset(pgd, 0); in walk_pud()
297 pgd_t *pgd = pgd_offset(mm, 0UL); in walk_pgd() local
301 for (i = 0; i < PTRS_PER_PGD; i++, pgd++) { in walk_pgd()
303 if (pgd_none(*pgd)) { in walk_pgd()
304 note_page(st, addr, 1, pgd_val(*pgd)); in walk_pgd()
306 BUG_ON(pgd_bad(*pgd)); in walk_pgd()
307 walk_pud(st, pgd, addr); in walk_pgd()
Dfault.c49 pgd_t *pgd; in show_pte() local
54 pr_alert("pgd = %p\n", mm->pgd); in show_pte()
55 pgd = pgd_offset(mm, addr); in show_pte()
56 pr_alert("[%08lx] *pgd=%016llx", addr, pgd_val(*pgd)); in show_pte()
63 if (pgd_none(*pgd) || pgd_bad(*pgd)) in show_pte()
66 pud = pud_offset(pgd, addr); in show_pte()
/linux-4.4.14/mm/
Dsparse-vmemmap.c127 pud_t * __meminit vmemmap_pud_populate(pgd_t *pgd, unsigned long addr, int node) in vmemmap_pud_populate() argument
129 pud_t *pud = pud_offset(pgd, addr); in vmemmap_pud_populate()
141 pgd_t *pgd = pgd_offset_k(addr); in vmemmap_pgd_populate() local
142 if (pgd_none(*pgd)) { in vmemmap_pgd_populate()
146 pgd_populate(&init_mm, pgd, p); in vmemmap_pgd_populate()
148 return pgd; in vmemmap_pgd_populate()
155 pgd_t *pgd; in vmemmap_populate_basepages() local
161 pgd = vmemmap_pgd_populate(addr, node); in vmemmap_populate_basepages()
162 if (!pgd) in vmemmap_populate_basepages()
164 pud = vmemmap_pud_populate(pgd, addr, node); in vmemmap_populate_basepages()
Dpagewalk.c72 static int walk_pud_range(pgd_t *pgd, unsigned long addr, unsigned long end, in walk_pud_range() argument
79 pud = pud_offset(pgd, addr); in walk_pud_range()
101 pgd_t *pgd; in walk_pgd_range() local
105 pgd = pgd_offset(walk->mm, addr); in walk_pgd_range()
108 if (pgd_none_or_clear_bad(pgd)) { in walk_pgd_range()
116 err = walk_pud_range(pgd, addr, next, walk); in walk_pgd_range()
119 } while (pgd++, addr = next, addr != end); in walk_pgd_range()
Dgup.c181 pgd_t *pgd; in follow_page_mask() local
196 pgd = pgd_offset(mm, address); in follow_page_mask()
197 if (pgd_none(*pgd) || unlikely(pgd_bad(*pgd))) in follow_page_mask()
200 pud = pud_offset(pgd, address); in follow_page_mask()
250 pgd_t *pgd; in get_gate_page() local
260 pgd = pgd_offset_k(address); in get_gate_page()
262 pgd = pgd_offset_gate(mm, address); in get_gate_page()
263 BUG_ON(pgd_none(*pgd)); in get_gate_page()
264 pud = pud_offset(pgd, address); in get_gate_page()
1293 static int gup_pud_range(pgd_t pgd, unsigned long addr, unsigned long end, in gup_pud_range() argument
[all …]
Dmprotect.c194 pgd_t *pgd, unsigned long addr, unsigned long end, in change_pud_range() argument
201 pud = pud_offset(pgd, addr); in change_pud_range()
218 pgd_t *pgd; in change_protection_range() local
224 pgd = pgd_offset(mm, addr); in change_protection_range()
229 if (pgd_none_or_clear_bad(pgd)) in change_protection_range()
231 pages += change_pud_range(vma, pgd, addr, next, newprot, in change_protection_range()
233 } while (pgd++, addr = next, addr != end); in change_protection_range()
Dmemory.c435 static inline void free_pud_range(struct mmu_gather *tlb, pgd_t *pgd, in free_pud_range() argument
444 pud = pud_offset(pgd, addr); in free_pud_range()
463 pud = pud_offset(pgd, start); in free_pud_range()
464 pgd_clear(pgd); in free_pud_range()
475 pgd_t *pgd; in free_pgd_range() local
520 pgd = pgd_offset(tlb->mm, addr); in free_pgd_range()
523 if (pgd_none_or_clear_bad(pgd)) in free_pgd_range()
525 free_pud_range(tlb, pgd, addr, next, floor, ceiling); in free_pgd_range()
526 } while (pgd++, addr = next, addr != end); in free_pgd_range()
650 pgd_t *pgd = pgd_offset(vma->vm_mm, addr); in print_bad_pte() local
[all …]
Dmremap.c34 pgd_t *pgd; in get_old_pmd() local
38 pgd = pgd_offset(mm, addr); in get_old_pmd()
39 if (pgd_none_or_clear_bad(pgd)) in get_old_pmd()
42 pud = pud_offset(pgd, addr); in get_old_pmd()
56 pgd_t *pgd; in alloc_new_pmd() local
60 pgd = pgd_offset(mm, addr); in alloc_new_pmd()
61 pud = pud_alloc(mm, pgd, addr); in alloc_new_pmd()
Dpgtable-generic.c19 void pgd_clear_bad(pgd_t *pgd) in pgd_clear_bad() argument
21 pgd_ERROR(*pgd); in pgd_clear_bad()
22 pgd_clear(pgd); in pgd_clear_bad()
/linux-4.4.14/arch/unicore32/kernel/
Dhibernate.c36 static pmd_t *resume_one_md_table_init(pgd_t *pgd) in resume_one_md_table_init() argument
41 pud = pud_offset(pgd, 0); in resume_one_md_table_init()
76 pgd_t *pgd; in resume_physical_mapping_init() local
82 pgd = pgd_base + pgd_idx; in resume_physical_mapping_init()
85 for (; pgd_idx < PTRS_PER_PGD; pgd++, pgd_idx++) { in resume_physical_mapping_init()
86 pmd = resume_one_md_table_init(pgd); in resume_physical_mapping_init()
/linux-4.4.14/arch/unicore32/mm/
Dioremap.c69 pgd_t *pgd; in unmap_area_sections() local
72 pgd = pgd_offset_k(addr); in unmap_area_sections()
74 pmd_t pmd, *pmdp = pmd_offset((pud_t *)pgd, addr); in unmap_area_sections()
95 pgd++; in unmap_area_sections()
106 pgd_t *pgd; in remap_area_sections() local
114 pgd = pgd_offset_k(addr); in remap_area_sections()
116 pmd_t *pmd = pmd_offset((pud_t *)pgd, addr); in remap_area_sections()
123 pgd++; in remap_area_sections()
Dfault.c43 pgd_t *pgd; in show_pte() local
48 printk(KERN_ALERT "pgd = %p\n", mm->pgd); in show_pte()
49 pgd = pgd_offset(mm, addr); in show_pte()
50 printk(KERN_ALERT "[%08lx] *pgd=%08lx", addr, pgd_val(*pgd)); in show_pte()
56 if (pgd_none(*pgd)) in show_pte()
59 if (pgd_bad(*pgd)) { in show_pte()
64 pmd = pmd_offset((pud_t *) pgd, addr); in show_pte()
346 pgd_t *pgd, *pgd_k; in do_ifault() local
357 pgd = cpu_get_pgd() + index; in do_ifault()
358 pgd_k = init_mm.pgd + index; in do_ifault()
[all …]
Dmmu.c174 static void __init alloc_init_section(pgd_t *pgd, unsigned long addr, in alloc_init_section() argument
178 pmd_t *pmd = pmd_offset((pud_t *)pgd, addr); in alloc_init_section()
212 pgd_t *pgd; in create_mapping() local
241 pgd = pgd_offset_k(addr); in create_mapping()
246 alloc_init_section(pgd, addr, next, phys, type); in create_mapping()
250 } while (pgd++, addr != end); in create_mapping()
451 pgd_t *pgd; in setup_mm_for_reboot() local
459 pgd = current->active_mm->pgd; in setup_mm_for_reboot()
463 for (i = 0; i < FIRST_USER_PGD_NR + USER_PTRS_PER_PGD; i++, pgd++) { in setup_mm_for_reboot()
467 pmd = pmd_off(pgd, i << PGDIR_SHIFT); in setup_mm_for_reboot()
Dpgd.c79 void free_pgd_slow(struct mm_struct *mm, pgd_t *pgd) in free_pgd_slow() argument
84 if (!pgd) in free_pgd_slow()
88 pmd = pmd_off(pgd, 0); in free_pgd_slow()
104 free_pages((unsigned long) pgd, 0); in free_pgd_slow()
Dmm.h20 static inline pmd_t *pmd_off(pgd_t *pgd, unsigned long virt) in pmd_off() argument
22 return pmd_offset((pud_t *)pgd, virt); in pmd_off()
/linux-4.4.14/arch/microblaze/include/asm/
Dpgalloc.h87 static inline void free_pgd_fast(pgd_t *pgd) in free_pgd_fast() argument
89 *(unsigned long **)pgd = pgd_quicklist; in free_pgd_fast()
90 pgd_quicklist = (unsigned long *) pgd; in free_pgd_fast()
94 static inline void free_pgd_slow(pgd_t *pgd) in free_pgd_slow() argument
96 free_page((unsigned long)pgd); in free_pgd_slow()
99 #define pgd_free(mm, pgd) free_pgd_fast(pgd) argument
Dmmu_context_mm.h54 extern void set_context(mm_context_t context, pgd_t *pgd);
120 tsk->thread.pgdir = next->pgd; in switch_mm()
122 set_context(next->context, next->pgd); in switch_mm()
132 current->thread.pgdir = mm->pgd; in activate_mm()
134 set_context(mm->context, mm->pgd); in activate_mm()
Dpgtable.h22 #define pgd_present(pgd) (1) /* pages are always present on non MMU */ argument
23 #define pgd_none(pgd) (0) argument
24 #define pgd_bad(pgd) (0) argument
321 static inline int pgd_none(pgd_t pgd) { return 0; } in pgd_none() argument
322 static inline int pgd_bad(pgd_t pgd) { return 0; } in pgd_bad() argument
323 static inline int pgd_present(pgd_t pgd) { return 1; } in pgd_present() argument
325 #define pgd_page(pgd) \ argument
326 ((unsigned long) __va(pgd_val(pgd) & PAGE_MASK))
480 #define pgd_offset(mm, address) ((mm)->pgd + pgd_index(address))
/linux-4.4.14/arch/mips/include/asm/
Dmmu_context.h23 #define htw_set_pwbase(pgd) \ argument
26 write_c0_pwbase(pgd); \
31 #define TLBMISS_HANDLER_SETUP_PGD(pgd) \ argument
34 tlbmiss_handler_setup_pgd((unsigned long)(pgd)); \
35 htw_set_pwbase((unsigned long)pgd); \
151 TLBMISS_HANDLER_SETUP_PGD(next->pgd); in switch_mm()
191 TLBMISS_HANDLER_SETUP_PGD(next->pgd); in activate_mm()
/linux-4.4.14/drivers/gpu/drm/nouveau/nvkm/subdev/bar/
Dgf100.c57 ret = nvkm_gpuobj_new(device, 0x8000, 0, false, NULL, &bar_vm->pgd); in gf100_bar_ctor_vm()
80 ret = nvkm_vm_ref(vm, &bar_vm->vm, bar_vm->pgd); in gf100_bar_ctor_vm()
86 nvkm_wo32(bar_vm->mem, 0x0200, lower_32_bits(bar_vm->pgd->addr)); in gf100_bar_ctor_vm()
87 nvkm_wo32(bar_vm->mem, 0x0204, upper_32_bits(bar_vm->pgd->addr)); in gf100_bar_ctor_vm()
143 nvkm_vm_ref(NULL, &bar->bar[1].vm, bar->bar[1].pgd); in gf100_bar_dtor()
144 nvkm_gpuobj_del(&bar->bar[1].pgd); in gf100_bar_dtor()
149 nvkm_vm_ref(NULL, &bar->bar[0].vm, bar->bar[0].pgd); in gf100_bar_dtor()
151 nvkm_gpuobj_del(&bar->bar[0].pgd); in gf100_bar_dtor()
Dnv50.c79 ret = nvkm_gpuobj_new(device, 0x4000, 0, false, bar->mem, &bar->pgd); in nv50_bar_oneinit()
97 ret = nvkm_vm_ref(vm, &bar->bar3_vm, bar->pgd); in nv50_bar_oneinit()
126 ret = nvkm_vm_ref(vm, &bar->bar1_vm, bar->pgd); in nv50_bar_oneinit()
177 nvkm_vm_ref(NULL, &bar->bar1_vm, bar->pgd); in nv50_bar_dtor()
181 nvkm_vm_ref(NULL, &bar->bar3_vm, bar->pgd); in nv50_bar_dtor()
183 nvkm_gpuobj_del(&bar->pgd); in nv50_bar_dtor()
/linux-4.4.14/arch/frv/include/asm/
Dpgtable.h46 #define pgd_present(pgd) (1) /* pages are always present on NO_MM */ argument
47 #define pgd_none(pgd) (0) argument
48 #define pgd_bad(pgd) (0) argument
183 #define pgd_offset(mm, address) ((mm)->pgd + pgd_index(address))
196 static inline int pgd_none(pgd_t pgd) { return 0; } in pgd_none() argument
197 static inline int pgd_bad(pgd_t pgd) { return 0; } in pgd_bad() argument
198 static inline int pgd_present(pgd_t pgd) { return 1; } in pgd_present() argument
199 static inline void pgd_clear(pgd_t *pgd) { } in pgd_clear() argument
201 #define pgd_populate(mm, pgd, pud) do { } while (0) argument
212 static inline pud_t *pud_offset(pgd_t *pgd, unsigned long address) in pud_offset() argument
[all …]
Dmmu_context.h38 change_mm_context(&prev->context, &next->context, next->pgd); \
43 change_mm_context(&prev->context, &next->context, next->pgd); \
/linux-4.4.14/arch/x86/xen/
Dmmu.c419 __visible pgdval_t xen_pgd_val(pgd_t pgd) in xen_pgd_val() argument
421 return pte_mfn_to_pfn(pgd.pgd); in xen_pgd_val()
433 __visible pgd_t xen_make_pgd(pgdval_t pgd) in xen_make_pgd() argument
435 pgd = pte_pfn_to_mfn(pgd); in xen_make_pgd()
436 return native_make_pgd(pgd); in xen_make_pgd()
521 static pgd_t *xen_get_user_pgd(pgd_t *pgd) in xen_get_user_pgd() argument
523 pgd_t *pgd_page = (pgd_t *)(((unsigned long)pgd) & PAGE_MASK); in xen_get_user_pgd()
524 unsigned offset = pgd - pgd_page; in xen_get_user_pgd()
610 static int __xen_pgd_walk(struct mm_struct *mm, pgd_t *pgd, in __xen_pgd_walk() argument
653 if (!pgd_val(pgd[pgdidx])) in __xen_pgd_walk()
[all …]
/linux-4.4.14/arch/parisc/mm/
Dhugetlbpage.c49 pgd_t *pgd; in huge_pte_alloc() local
61 pgd = pgd_offset(mm, addr); in huge_pte_alloc()
62 pud = pud_alloc(mm, pgd, addr); in huge_pte_alloc()
73 pgd_t *pgd; in huge_pte_offset() local
80 pgd = pgd_offset(mm, addr); in huge_pte_offset()
81 if (!pgd_none(*pgd)) { in huge_pte_offset()
82 pud = pud_offset(pgd, addr); in huge_pte_offset()
/linux-4.4.14/arch/ia64/mm/
Dhugetlbpage.c31 pgd_t *pgd; in huge_pte_alloc() local
36 pgd = pgd_offset(mm, taddr); in huge_pte_alloc()
37 pud = pud_alloc(mm, pgd, taddr); in huge_pte_alloc()
50 pgd_t *pgd; in huge_pte_offset() local
55 pgd = pgd_offset(mm, taddr); in huge_pte_offset()
56 if (pgd_present(*pgd)) { in huge_pte_offset()
57 pud = pud_offset(pgd, taddr); in huge_pte_offset()
Dinit.c213 pgd_t *pgd; in put_kernel_page() local
218 pgd = pgd_offset_k(address); /* note: this is NOT pgd_offset()! */ in put_kernel_page()
221 pud = pud_alloc(&init_mm, pgd, address); in put_kernel_page()
387 pgd_t *pgd; in vmemmap_find_next_valid_pfn() local
392 pgd = pgd_offset_k(end_address); in vmemmap_find_next_valid_pfn()
393 if (pgd_none(*pgd)) { in vmemmap_find_next_valid_pfn()
398 pud = pud_offset(pgd, end_address); in vmemmap_find_next_valid_pfn()
435 pgd_t *pgd; in create_mem_map_page_table() local
448 pgd = pgd_offset_k(address); in create_mem_map_page_table()
449 if (pgd_none(*pgd)) in create_mem_map_page_table()
[all …]
Dfault.c50 pgd_t *pgd; in mapped_kernel_page_is_present() local
55 pgd = pgd_offset_k(address); in mapped_kernel_page_is_present()
56 if (pgd_none(*pgd) || pgd_bad(*pgd)) in mapped_kernel_page_is_present()
59 pud = pud_offset(pgd, address); in mapped_kernel_page_is_present()
/linux-4.4.14/arch/m68k/include/asm/
Dmmu_context.h68 static inline void set_context(mm_context_t context, pgd_t *pgd) in set_context() argument
77 set_context(tsk->mm->context, next->pgd); in switch_mm()
88 set_context(mm->context, mm->pgd); in activate_mm()
101 pgd_t *pgd; in load_ksp_mmu() local
125 pgd = pgd_offset(mm, mmuar); in load_ksp_mmu()
126 if (pgd_none(*pgd)) in load_ksp_mmu()
129 pmd = pmd_offset(pgd, mmuar); in load_ksp_mmu()
219 mm->context = virt_to_phys(mm->pgd); in init_new_context()
297 next_mm->context = virt_to_phys(next_mm->pgd); in activate_mm()
Dmotorola_pgtable.h126 #define __pgd_page(pgd) ((unsigned long)__va(pgd_val(pgd) & _TABLE_MASK)) argument
149 #define pgd_none(pgd) (!pgd_val(pgd)) argument
150 #define pgd_bad(pgd) ((pgd_val(pgd) & _DESCTYPE_MASK) != _PAGE_TABLE) argument
151 #define pgd_present(pgd) (pgd_val(pgd) & _PAGE_TABLE) argument
153 #define pgd_page(pgd) (mem_map + ((unsigned long)(__va(pgd_val(pgd)) - PAGE_OFFSET) >> PAGE_SHIFT)) argument
198 return mm->pgd + pgd_index(address); in pgd_offset()
Dpgtable_no.h18 #define pgd_present(pgd) (1) argument
19 #define pgd_none(pgd) (0) argument
20 #define pgd_bad(pgd) (0) argument
Dmcf_pgalloc.h26 extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) in pmd_alloc_kernel() argument
28 return (pmd_t *) pgd; in pmd_alloc_kernel()
87 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
89 free_page((unsigned long) pgd); in pgd_free()
Dmotorola_pgalloc.h86 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
88 pmd_free(mm, (pmd_t *)pgd); in pgd_free()
108 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument
110 pgd_set(pgd, pmd); in pgd_populate()
Dsun3_pgtable.h147 static inline int pgd_none (pgd_t pgd) { return 0; } in pgd_none() argument
148 static inline int pgd_bad (pgd_t pgd) { return 0; } in pgd_bad() argument
149 static inline int pgd_present (pgd_t pgd) { return 1; } in pgd_present() argument
191 ((mm)->pgd + pgd_index(address))
197 static inline pmd_t *pmd_offset (pgd_t *pgd, unsigned long address) in pmd_offset() argument
199 return (pmd_t *) pgd; in pmd_offset()
Dmcf_pgtable.h200 static inline int pgd_none(pgd_t pgd) { return 0; } in pgd_none() argument
201 static inline int pgd_bad(pgd_t pgd) { return 0; } in pgd_bad() argument
202 static inline int pgd_present(pgd_t pgd) { return 1; } in pgd_present() argument
334 #define pgd_offset(mm, address) ((mm)->pgd + pgd_index(address))
344 static inline pmd_t *pmd_offset(pgd_t *pgd, unsigned long address) in pmd_offset() argument
346 return (pmd_t *) pgd; in pmd_offset()
Dpage.h25 typedef struct { unsigned long pgd; } pgd_t; member
31 #define pgd_val(x) ((x).pgd)
Dsun3_pgalloc.h84 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
86 free_page((unsigned long) pgd); in pgd_free()
/linux-4.4.14/arch/powerpc/mm/
Dhugetlbpage.c85 int pgd_huge(pgd_t pgd) in pgd_huge() argument
90 return ((pgd_val(pgd) & 0x3) != 0x0); in pgd_huge()
122 int pgd_huge(pgd_t pgd) in pgd_huge() argument
131 return __find_linux_pte_or_hugepte(mm->pgd, addr, NULL, NULL); in huge_pte_offset()
601 static void hugetlb_free_pud_range(struct mmu_gather *tlb, pgd_t *pgd, in hugetlb_free_pud_range() argument
611 pud = pud_offset(pgd, addr); in hugetlb_free_pud_range()
644 pud = pud_offset(pgd, start); in hugetlb_free_pud_range()
645 pgd_clear(pgd); in hugetlb_free_pud_range()
656 pgd_t *pgd; in hugetlb_free_pgd_range() local
678 pgd = pgd_offset(tlb->mm, addr); in hugetlb_free_pgd_range()
[all …]
Dpgtable.c218 pgd_t *pgd; in assert_pte_locked() local
224 pgd = mm->pgd + pgd_index(addr); in assert_pte_locked()
225 BUG_ON(pgd_none(*pgd)); in assert_pte_locked()
226 pud = pud_offset(pgd, addr); in assert_pte_locked()
Dpgtable_32.c98 void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
101 kmem_cache_free(pgtable_cache, (void *)pgd); in pgd_free()
103 free_pages((unsigned long)pgd, PGDIR_ORDER - PAGE_SHIFT); in pgd_free()
369 pgd_t *pgd; in get_pteptr() local
375 pgd = pgd_offset(mm, addr & PAGE_MASK); in get_pteptr()
376 if (pgd) { in get_pteptr()
377 pud = pud_offset(pgd, addr & PAGE_MASK); in get_pteptr()
Dsubpage-prot.c63 pgd_t *pgd; in hpte_flush_range() local
69 pgd = pgd_offset(mm, addr); in hpte_flush_range()
70 if (pgd_none(*pgd)) in hpte_flush_range()
72 pud = pud_offset(pgd, addr); in hpte_flush_range()
/linux-4.4.14/lib/
Dioremap.c97 static inline int ioremap_pud_range(pgd_t *pgd, unsigned long addr, in ioremap_pud_range() argument
104 pud = pud_alloc(&init_mm, pgd, addr); in ioremap_pud_range()
126 pgd_t *pgd; in ioremap_page_range() local
135 pgd = pgd_offset_k(addr); in ioremap_page_range()
138 err = ioremap_pud_range(pgd, addr, next, phys_addr+addr, prot); in ioremap_page_range()
141 } while (pgd++, addr = next, addr != end); in ioremap_page_range()
/linux-4.4.14/arch/alpha/include/asm/
Dpgtable.h240 #define pgd_page(pgd) (mem_map + ((pgd_val(pgd) & _PFN_MASK) >> 32)) argument
243 extern inline unsigned long pgd_page_vaddr(pgd_t pgd) in pgd_page_vaddr() argument
244 { return PAGE_OFFSET + ((pgd_val(pgd) & _PFN_MASK) >> (32-PAGE_SHIFT)); } in pgd_page_vaddr()
258 extern inline int pgd_none(pgd_t pgd) { return !pgd_val(pgd); } in pgd_none() argument
259 extern inline int pgd_bad(pgd_t pgd) { return (pgd_val(pgd) & ~_PFN_MASK) != _PAGE_TABLE; } in pgd_bad() argument
260 extern inline int pgd_present(pgd_t pgd) { return pgd_val(pgd) & _PAGE_VALID; } in pgd_present() argument
287 #define pgd_offset(mm, address) ((mm)->pgd+pgd_index(address))
Dpgalloc.h27 pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument
29 pgd_set(pgd, pmd); in pgd_populate()
35 pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
37 free_page((unsigned long)pgd); in pgd_free()
/linux-4.4.14/arch/sparc/mm/
Dleon_mm.c39 unsigned int pgd, pmd, ped; in leon_swprobe() local
68 pgd = LEON_BYPASS_LOAD_PA(ctxtbl + (ctx * 4)); in leon_swprobe()
70 if (((pgd & SRMMU_ET_MASK) == SRMMU_ET_PTE)) { in leon_swprobe()
74 pte = pgd; in leon_swprobe()
75 paddrbase = pgd & _SRMMU_PTE_PMASK_LEON; in leon_swprobe()
78 if (((pgd & SRMMU_ET_MASK) != SRMMU_ET_PTD)) { in leon_swprobe()
85 printk(KERN_INFO "swprobe: --- pgd (%x) ---\n", pgd); in leon_swprobe()
87 ptr = (pgd & SRMMU_PTD_PMASK) << 4; in leon_swprobe()
Dgup.c143 static int gup_pud_range(pgd_t pgd, unsigned long addr, unsigned long end, in gup_pud_range() argument
149 pudp = pud_offset(&pgd, addr); in gup_pud_range()
180 pgd_t pgd = *pgdp; in __get_user_pages_fast() local
183 if (pgd_none(pgd)) in __get_user_pages_fast()
185 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in __get_user_pages_fast()
228 pgd_t pgd = *pgdp; in get_user_pages_fast() local
231 if (pgd_none(pgd)) in get_user_pages_fast()
233 if (!gup_pud_range(pgd, addr, next, write, pages, &nr)) in get_user_pages_fast()
Dhugetlbpage.c132 pgd_t *pgd; in huge_pte_alloc() local
144 pgd = pgd_offset(mm, addr); in huge_pte_alloc()
145 pud = pud_alloc(mm, pgd, addr); in huge_pte_alloc()
156 pgd_t *pgd; in huge_pte_offset() local
163 pgd = pgd_offset(mm, addr); in huge_pte_offset()
164 if (!pgd_none(*pgd)) { in huge_pte_offset()
165 pud = pud_offset(pgd, addr); in huge_pte_offset()
Dfault_32.c52 (tsk->mm ? (unsigned long) tsk->mm->pgd : in unhandled_fault()
53 (unsigned long) tsk->active_mm->pgd)); in unhandled_fault()
359 pgd_t *pgd, *pgd_k; in do_sparc_fault() local
362 pgd = tsk->active_mm->pgd + offset; in do_sparc_fault()
363 pgd_k = init_mm.pgd + offset; in do_sparc_fault()
365 if (!pgd_present(*pgd)) { in do_sparc_fault()
368 pgd_val(*pgd) = pgd_val(*pgd_k); in do_sparc_fault()
372 pmd = pmd_offset(pgd, address); in do_sparc_fault()
/linux-4.4.14/arch/x86/include/asm/
Dpgtable.h21 void ptdump_walk_pgd_level(struct seq_file *m, pgd_t *pgd);
56 #define set_pgd(pgdp, pgd) native_set_pgd(pgdp, pgd) argument
57 #define pgd_clear(pgd) native_pgd_clear(pgd) argument
627 static inline int pgd_present(pgd_t pgd) in pgd_present() argument
629 return pgd_flags(pgd) & _PAGE_PRESENT; in pgd_present()
632 static inline unsigned long pgd_page_vaddr(pgd_t pgd) in pgd_page_vaddr() argument
634 return (unsigned long)__va((unsigned long)pgd_val(pgd) & PTE_PFN_MASK); in pgd_page_vaddr()
641 #define pgd_page(pgd) pfn_to_page(pgd_val(pgd) >> PAGE_SHIFT) argument
649 static inline pud_t *pud_offset(pgd_t *pgd, unsigned long address) in pud_offset() argument
651 return (pud_t *)pgd_page_vaddr(*pgd) + pud_index(address); in pud_offset()
[all …]
Dpgtable_types.h220 typedef struct { pgdval_t pgd; } pgd_t; member
227 static inline pgdval_t native_pgd_val(pgd_t pgd) in native_pgd_val() argument
229 return pgd.pgd; in native_pgd_val()
232 static inline pgdval_t pgd_flags(pgd_t pgd) in pgd_flags() argument
234 return native_pgd_val(pgd) & PTE_FLAGS_MASK; in pgd_flags()
254 return native_pgd_val(pud.pgd); in native_pud_val()
275 return native_pgd_val(pmd.pud.pgd); in native_pmd_val()
440 extern pte_t *lookup_address_in_pgd(pgd_t *pgd, unsigned long address,
444 extern int kernel_map_pages_in_pgd(pgd_t *pgd, u64 pfn, unsigned long address,
Dpgtable_64.h109 static inline void native_set_pgd(pgd_t *pgdp, pgd_t pgd) in native_set_pgd() argument
111 *pgdp = pgd; in native_set_pgd()
114 static inline void native_pgd_clear(pgd_t *pgd) in native_pgd_clear() argument
116 native_set_pgd(pgd, native_make_pgd(0)); in native_pgd_clear()
130 static inline int pgd_large(pgd_t pgd) { return 0; } in pgd_large() argument
Dpgalloc.h14 static inline void paravirt_pgd_free(struct mm_struct *mm, pgd_t *pgd) {} in paravirt_pgd_free() argument
34 extern void pgd_free(struct mm_struct *mm, pgd_t *pgd);
120 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pud_t *pud) in pgd_populate() argument
123 set_pgd(pgd, __pgd(_PAGE_TABLE | __pa(pud))); in pgd_populate()
Dparavirt.h346 static inline void paravirt_pgd_free(struct mm_struct *mm, pgd_t *pgd) in paravirt_pgd_free() argument
348 PVOP_VCALL2(pv_mmu_ops.pgd_free, mm, pgd); in paravirt_pgd_free()
446 static inline pgdval_t pgd_val(pgd_t pgd) in pgd_val() argument
452 pgd.pgd, (u64)pgd.pgd >> 32); in pgd_val()
455 pgd.pgd); in pgd_val()
593 static inline void set_pgd(pgd_t *pgdp, pgd_t pgd) in set_pgd() argument
595 pgdval_t val = native_pgd_val(pgd); in set_pgd()
/linux-4.4.14/arch/score/include/asm/
Dmmu_context.h21 #define TLBMISS_HANDLER_SETUP_PGD(pgd) (pgd_current = (unsigned long)(pgd)) argument
82 TLBMISS_HANDLER_SETUP_PGD(next->pgd); in switch_mm()
109 TLBMISS_HANDLER_SETUP_PGD(next->pgd); in activate_mm()
Dpgalloc.h35 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
37 free_pages((unsigned long)pgd, PGD_ORDER); in pgd_free()
Dpgtable.h79 #define pgd_offset(mm, addr) ((mm)->pgd + pgd_index(addr))
112 #define pgd_present(pgd) (1) argument
113 #define pgd_none(pgd) (0) argument
114 #define pgd_bad(pgd) (0) argument
/linux-4.4.14/arch/sparc/include/asm/
Dpgtable_32.h134 static inline unsigned long pgd_page_vaddr(pgd_t pgd) in pgd_page_vaddr() argument
136 if (srmmu_device_memory(pgd_val(pgd))) { in pgd_page_vaddr()
139 unsigned long v = pgd_val(pgd) & SRMMU_PTD_PMASK; in pgd_page_vaddr()
186 static inline int pgd_none(pgd_t pgd) in pgd_none() argument
188 return !(pgd_val(pgd) & 0xFFFFFFF); in pgd_none()
191 static inline int pgd_bad(pgd_t pgd) in pgd_bad() argument
193 return (pgd_val(pgd) & SRMMU_ET_MASK) != SRMMU_ET_PTD; in pgd_bad()
196 static inline int pgd_present(pgd_t pgd) in pgd_present() argument
198 return ((pgd_val(pgd) & SRMMU_ET_MASK) == SRMMU_ET_PTD); in pgd_present()
315 #define pgd_offset(mm, address) ((mm)->pgd + pgd_index(address))
Dpgalloc_32.h22 static inline void free_pgd_fast(pgd_t *pgd) in free_pgd_fast() argument
24 srmmu_free_nocache(pgd, SRMMU_PGD_TABLE_SIZE); in free_pgd_fast()
27 #define pgd_free(mm, pgd) free_pgd_fast(pgd) argument
Dpgalloc_64.h18 static inline void __pgd_populate(pgd_t *pgd, pud_t *pud) in __pgd_populate() argument
20 pgd_set(pgd, pud); in __pgd_populate()
30 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
32 kmem_cache_free(pgtable_cache, pgd); in pgd_free()
Dpgtable_64.h790 #define pgd_none(pgd) (!pgd_val(pgd)) argument
792 #define pgd_bad(pgd) (pgd_val(pgd) & ~PAGE_MASK) argument
830 #define pgd_page_vaddr(pgd) \ argument
831 ((unsigned long) __va(pgd_val(pgd)))
832 #define pgd_present(pgd) (pgd_val(pgd) != 0U) argument
833 #define pgd_clear(pgdp) (pgd_val(*(pgd)) = 0UL)
857 #define pgd_offset(mm, address) ((mm)->pgd + pgd_index(address))
/linux-4.4.14/arch/arm64/include/asm/
Dproc-fns.h38 #define cpu_switch_mm(pgd,mm) \ argument
40 BUG_ON(pgd == swapper_pg_dir); \
41 cpu_do_switch_mm(virt_to_phys(pgd),mm); \
Dpgtable.h482 #define pgd_none(pgd) (!pgd_val(pgd)) argument
483 #define pgd_bad(pgd) (!(pgd_val(pgd) & 2)) argument
484 #define pgd_present(pgd) (pgd_val(pgd)) argument
486 static inline void set_pgd(pgd_t *pgdp, pgd_t pgd) in set_pgd() argument
488 *pgdp = pgd; in set_pgd()
497 static inline pud_t *pgd_page_vaddr(pgd_t pgd) in pgd_page_vaddr() argument
499 return __va(pgd_val(pgd) & PHYS_MASK & (s32)PAGE_MASK); in pgd_page_vaddr()
505 static inline pud_t *pud_offset(pgd_t *pgd, unsigned long addr) in pud_offset() argument
507 return (pud_t *)pgd_page_vaddr(*pgd) + pud_index(addr); in pud_offset()
510 #define pgd_page(pgd) pfn_to_page(__phys_to_pfn(pgd_val(pgd) & PHYS_MASK)) argument
[all …]
Dkvm_mmu.h107 static inline void kvm_clean_pgd(pgd_t *pgd) {}
180 pgd_t *pgd = kvm->arch.pgd;
184 return pgd;
186 pud = pud_offset(pgd, 0);
Dpgalloc.h65 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pud_t *pud) in pgd_populate() argument
67 set_pgd(pgd, __pgd(__pa(pud) | PUD_TYPE_TABLE)); in pgd_populate()
73 extern void pgd_free(struct mm_struct *mm, pgd_t *pgd);
Dpgtable-types.h53 typedef struct { pgdval_t pgd; } pgd_t; member
54 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/arch/s390/mm/
Dgup.c149 static inline int gup_pud_range(pgd_t *pgdp, pgd_t pgd, unsigned long addr, in gup_pud_range() argument
156 if ((pgd_val(pgd) & _REGION_ENTRY_TYPE_MASK) == _REGION_ENTRY_TYPE_R2) in gup_pud_range()
157 pudp = (pud_t *) pgd_deref(pgd); in gup_pud_range()
182 pgd_t *pgdp, pgd; in __get_user_pages_fast() local
201 pgd = *pgdp; in __get_user_pages_fast()
204 if (pgd_none(pgd)) in __get_user_pages_fast()
206 if (!gup_pud_range(pgdp, pgd, addr, next, write, pages, &nr)) in __get_user_pages_fast()
Ddump_pagetables.c149 pgd_t *pgd, unsigned long addr) in walk_pud_level() argument
157 pud = pud_offset(pgd, addr); in walk_pud_level()
174 pgd_t *pgd; in walk_pgd_level() local
180 pgd = pgd_offset_k(addr); in walk_pgd_level()
181 if (!pgd_none(*pgd)) in walk_pgd_level()
182 walk_pud_level(m, &st, pgd, addr); in walk_pgd_level()
Dpgtable.c54 unsigned long *table, *pgd; in crst_table_upgrade() local
64 pgd = (unsigned long *) mm->pgd; in crst_table_upgrade()
66 pgd_populate(mm, (pgd_t *) table, (pud_t *) pgd); in crst_table_upgrade()
67 mm->pgd = (pgd_t *) table; in crst_table_upgrade()
69 mm->context.asce = __pa(mm->pgd) | _ASCE_TABLE_LENGTH | in crst_table_upgrade()
80 pgd_t *pgd; in crst_table_downgrade() local
90 pgd = mm->pgd; in crst_table_downgrade()
91 mm->pgd = (pgd_t *) (pgd_val(*pgd) & _REGION_ENTRY_ORIGIN); in crst_table_downgrade()
93 mm->context.asce = __pa(mm->pgd) | _ASCE_TABLE_LENGTH | in crst_table_downgrade()
96 crst_table_free(mm, (unsigned long *) pgd); in crst_table_downgrade()
[all …]
Dpageattr.c127 pgd_t *pgd; in __kernel_map_pages() local
134 pgd = pgd_offset_k(address); in __kernel_map_pages()
135 pud = pud_offset(pgd, address); in __kernel_map_pages()
Dinit.c84 init_mm.pgd = swapper_pg_dir; in paging_init()
92 init_mm.context.asce = (__pa(init_mm.pgd) & PAGE_MASK) | asce_bits; in paging_init()
94 clear_table((unsigned long *) init_mm.pgd, pgd_type, in paging_init()
/linux-4.4.14/arch/alpha/mm/
Dfault.c50 pcb->ptbr = ((unsigned long) next_mm->pgd - IDENT_ADDR) >> PAGE_SHIFT; in __load_new_mm_context()
248 pgd_t *pgd, *pgd_k; in do_page_fault() local
250 pgd = current->active_mm->pgd + index; in do_page_fault()
252 if (!pgd_present(*pgd) && pgd_present(*pgd_k)) { in do_page_fault()
253 pgd_val(*pgd) = pgd_val(*pgd_k); in do_page_fault()
Dinit.c147 pgd_t *pgd; in callback_init() local
185 pgd = pgd_offset_k(VMALLOC_START); in callback_init()
186 pgd_set(pgd, (pmd_t *)two_pages); in callback_init()
187 pmd = pmd_offset(pgd, VMALLOC_START); in callback_init()
216 if (pmd != pmd_offset(pgd, vaddr)) { in callback_init()
218 pmd = pmd_offset(pgd, vaddr); in callback_init()
/linux-4.4.14/arch/avr32/include/asm/
Dpgalloc.h34 pgd_t *pgd = x; in pgd_ctor() local
36 memcpy(pgd + USER_PTRS_PER_PGD, in pgd_ctor()
49 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
51 quicklist_free(QUICK_PGD, NULL, pgd); in pgd_free()
Dpage.h33 typedef struct { unsigned long pgd; } pgd_t; member
38 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/arch/s390/include/asm/
Dpgalloc.h91 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pud_t *pud) in pgd_populate() argument
93 pgd_val(*pgd) = _REGION2_ENTRY | __pa(pud); in pgd_populate()
117 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
120 pgtable_pmd_page_dtor(virt_to_page(pgd)); in pgd_free()
121 crst_table_free(mm, (unsigned long *) pgd); in pgd_free()
Dmmu_context.h38 mm->context.asce = __pa(mm->pgd) | _ASCE_TABLE_LENGTH | in init_new_context()
43 mm->context.asce = __pa(mm->pgd) | _ASCE_TABLE_LENGTH | in init_new_context()
48 mm->context.asce = __pa(mm->pgd) | _ASCE_TABLE_LENGTH | in init_new_context()
53 crst_table_init((unsigned long *) mm->pgd, pgd_entry_type(mm)); in init_new_context()
Dpgtable.h433 static inline int pgd_present(pgd_t pgd) in pgd_present() argument
435 if ((pgd_val(pgd) & _REGION_ENTRY_TYPE_MASK) < _REGION_ENTRY_TYPE_R2) in pgd_present()
437 return (pgd_val(pgd) & _REGION_ENTRY_ORIGIN) != 0UL; in pgd_present()
440 static inline int pgd_none(pgd_t pgd) in pgd_none() argument
442 if ((pgd_val(pgd) & _REGION_ENTRY_TYPE_MASK) < _REGION_ENTRY_TYPE_R2) in pgd_none()
444 return (pgd_val(pgd) & _REGION_ENTRY_INVALID) != 0UL; in pgd_none()
447 static inline int pgd_bad(pgd_t pgd) in pgd_bad() argument
457 return (pgd_val(pgd) & mask) != 0; in pgd_bad()
872 static inline void pgd_clear(pgd_t *pgd) in pgd_clear() argument
874 if ((pgd_val(*pgd) & _REGION_ENTRY_TYPE_MASK) == _REGION_ENTRY_TYPE_R2) in pgd_clear()
[all …]
/linux-4.4.14/arch/ia64/include/asm/
Dpgtable.h285 #define pgd_none(pgd) (!pgd_val(pgd)) argument
286 #define pgd_bad(pgd) (!ia64_phys_addr_valid(pgd_val(pgd))) argument
287 #define pgd_present(pgd) (pgd_val(pgd) != 0UL) argument
289 #define pgd_page_vaddr(pgd) ((unsigned long) __va(pgd_val(pgd) & _PFN_MASK)) argument
290 #define pgd_page(pgd) virt_to_page((pgd_val(pgd) + PAGE_OFFSET)) argument
374 return mm->pgd + pgd_index(address); in pgd_offset()
380 (init_mm.pgd + (((addr) >> PGDIR_SHIFT) & (PTRS_PER_PGD - 1)))
/linux-4.4.14/arch/score/mm/
Dfault.c209 pgd_t *pgd, *pgd_k; in do_page_fault() local
214 pgd = (pgd_t *) pgd_current + offset; in do_page_fault()
215 pgd_k = init_mm.pgd + offset; in do_page_fault()
219 set_pgd(pgd, *pgd_k); in do_page_fault()
221 pud = pud_offset(pgd, address); in do_page_fault()
/linux-4.4.14/arch/parisc/kernel/
Dcache.c499 static inline pte_t *get_ptep(pgd_t *pgd, unsigned long addr) in get_ptep() argument
503 if (!pgd_none(*pgd)) { in get_ptep()
504 pud_t *pud = pud_offset(pgd, addr); in get_ptep()
517 pgd_t *pgd; in flush_cache_mm() local
536 pgd = mm->pgd; in flush_cache_mm()
543 pte_t *ptep = get_ptep(pgd, addr); in flush_cache_mm()
576 pgd_t *pgd; in flush_cache_range() local
592 pgd = vma->vm_mm->pgd; in flush_cache_range()
595 pte_t *ptep = get_ptep(pgd, addr); in flush_cache_range()
/linux-4.4.14/arch/xtensa/mm/
Dfault.c209 pgd_t *pgd, *pgd_k; in do_page_fault() local
216 pgd = act_mm->pgd + index; in do_page_fault()
217 pgd_k = init_mm.pgd + index; in do_page_fault()
222 pgd_val(*pgd) = pgd_val(*pgd_k); in do_page_fault()
224 pmd = pmd_offset(pgd, address); in do_page_fault()
Dtlb.c173 pgd_t *pgd; in get_pte_for_vaddr() local
179 pgd = pgd_offset(mm, vaddr); in get_pte_for_vaddr()
180 if (pgd_none_or_clear_bad(pgd)) in get_pte_for_vaddr()
182 pmd = pmd_offset(pgd, vaddr); in get_pte_for_vaddr()
Dmmu.c23 pgd_t *pgd = pgd_offset_k(vaddr); in init_pmd() local
24 pmd_t *pmd = pmd_offset(pgd, vaddr); in init_pmd()
/linux-4.4.14/arch/nios2/mm/
Dfault.c247 pgd_t *pgd, *pgd_k; in do_page_fault() local
252 pgd = pgd_current + offset; in do_page_fault()
253 pgd_k = init_mm.pgd + offset; in do_page_fault()
257 set_pgd(pgd, *pgd_k); in do_page_fault()
259 pud = pud_offset(pgd, address); in do_page_fault()
Dpgtable.c37 static void pgd_init(pgd_t *pgd) in pgd_init() argument
39 unsigned long *p = (unsigned long *) pgd; in pgd_init()
Dmmu_context.c94 pgd_current = next->pgd; in switch_mm()
110 pgd_current = next->pgd; in activate_mm()
/linux-4.4.14/arch/arm/include/asm/
Dpgtable-nommu.h23 #define pgd_present(pgd) (1) argument
24 #define pgd_none(pgd) (0) argument
25 #define pgd_bad(pgd) (0) argument
Dproc-fns.h116 #define cpu_switch_mm(pgd,mm) cpu_do_switch_mm(virt_to_phys(pgd),mm) argument
147 #define cpu_switch_mm(pgd,mm) { } argument
Dpgtable-2level-types.h35 typedef struct { pmdval_t pgd[2]; } pgd_t; member
40 #define pgd_val(x) ((x).pgd[0])
Dpgtable-3level-types.h38 typedef struct { pgdval_t pgd; } pgd_t; member
43 #define pgd_val(x) ((x).pgd)
Dmmu_context.h61 cpu_switch_mm(mm->pgd, mm); in check_and_switch_context()
80 cpu_switch_mm(mm->pgd, mm); in finish_arch_post_lock_switch()
Dkvm_mmu.h88 static inline void kvm_clean_pgd(pgd_t *pgd) in kvm_clean_pgd() argument
90 clean_dcache_area(pgd, PTRS_PER_S2_PGD * sizeof(pgd_t)); in kvm_clean_pgd()
168 return kvm->arch.pgd; in kvm_get_hwpgd()
/linux-4.4.14/arch/c6x/include/asm/
Dpgtable.h26 #define pgd_present(pgd) (1) argument
27 #define pgd_none(pgd) (0) argument
28 #define pgd_bad(pgd) (0) argument
/linux-4.4.14/arch/um/include/asm/
Dpgtable-3level.h68 static inline int pgd_newpage(pgd_t pgd) in pgd_newpage() argument
70 return(pgd_val(pgd) & _PAGE_NEWPAGE); in pgd_newpage()
73 static inline void pgd_mkuptodate(pgd_t pgd) { pgd_val(pgd) &= ~_PAGE_NEWPAGE; } in pgd_mkuptodate() argument
Dpgtable-2level.h35 static inline int pgd_newpage(pgd_t pgd) { return 0; } in pgd_newpage() argument
36 static inline void pgd_mkuptodate(pgd_t pgd) { } in pgd_mkuptodate() argument
Dpage.h38 typedef struct { unsigned long pgd; } pgd_t; member
61 typedef struct { unsigned long pgd; } pgd_t; member
88 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/
Dgf100.c73 gf100_vm_map_pgt(struct nvkm_gpuobj *pgd, u32 index, struct nvkm_memory *pgt[2]) in gf100_vm_map_pgt() argument
82 nvkm_kmap(pgd); in gf100_vm_map_pgt()
83 nvkm_wo32(pgd, (index * 8) + 0, pde[0]); in gf100_vm_map_pgt()
84 nvkm_wo32(pgd, (index * 8) + 4, pde[1]); in gf100_vm_map_pgt()
85 nvkm_done(pgd); in gf100_vm_map_pgt()
Dnv50.c32 nv50_vm_map_pgt(struct nvkm_gpuobj *pgd, u32 pde, struct nvkm_memory *pgt[2]) in nv50_vm_map_pgt() argument
57 nvkm_kmap(pgd); in nv50_vm_map_pgt()
58 nvkm_wo32(pgd, (pde * 8) + 0, lower_32_bits(phys)); in nv50_vm_map_pgt()
59 nvkm_wo32(pgd, (pde * 8) + 4, upper_32_bits(phys)); in nv50_vm_map_pgt()
60 nvkm_done(pgd); in nv50_vm_map_pgt()
/linux-4.4.14/arch/unicore32/include/asm/
Dpgalloc.h26 extern void free_pgd_slow(struct mm_struct *mm, pgd_t *pgd);
29 #define pgd_free(mm, pgd) free_pgd_slow(mm, pgd) argument
Dcpu-single.h21 #define cpu_switch_mm(pgd, mm) cpu_do_switch_mm(virt_to_phys(pgd), mm) argument
Dpage.h38 typedef struct { unsigned long pgd; } pgd_t; member
42 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/arch/blackfin/include/asm/
Dpgtable.h19 #define pgd_present(pgd) (1) argument
20 #define pgd_none(pgd) (0) argument
21 #define pgd_bad(pgd) (0) argument
/linux-4.4.14/arch/arm/lib/
Duaccess_with_memcpy.c29 pgd_t *pgd; in pin_page_for_write() local
35 pgd = pgd_offset(current->mm, addr); in pin_page_for_write()
36 if (unlikely(pgd_none(*pgd) || pgd_bad(*pgd))) in pin_page_for_write()
39 pud = pud_offset(pgd, addr); in pin_page_for_write()
/linux-4.4.14/arch/sh/include/asm/
Dpage.h79 typedef struct { unsigned long long pgd; } pgd_t; member
87 typedef struct { unsigned long pgd; } pgd_t; member
93 typedef struct { unsigned long pgd; } pgd_t; member
98 #define pgd_val(x) ((x).pgd)
Dmmu_context_32.h50 static inline void set_TTB(pgd_t *pgd) in set_TTB() argument
52 __raw_writel((unsigned long)pgd, MMU_TTB); in set_TTB()
Dmmu_context_64.h75 #define set_TTB(pgd) (mmu_pdtp_cache = (pgd)) argument
/linux-4.4.14/arch/m68k/mm/
Dmcfmmu.c88 pgd_t *pgd; in cf_tlb_miss() local
104 pgd = pgd_offset(mm, mmuar); in cf_tlb_miss()
105 if (pgd_none(*pgd)) { in cf_tlb_miss()
110 pmd = pmd_offset(pgd, mmuar); in cf_tlb_miss()
/linux-4.4.14/arch/microblaze/mm/
Dpgtable.c193 pgd_t *pgd; in get_pteptr() local
198 pgd = pgd_offset(mm, addr & PAGE_MASK); in get_pteptr()
199 if (pgd) { in get_pteptr()
200 pmd = pmd_offset(pgd, addr & PAGE_MASK); in get_pteptr()
/linux-4.4.14/arch/openrisc/mm/
Dfault.c310 pgd_t *pgd, *pgd_k; in do_page_fault() local
322 pgd = (pgd_t *)current_pgd + offset; in do_page_fault()
323 pgd_k = init_mm.pgd + offset; in do_page_fault()
337 pud = pud_offset(pgd, address); in do_page_fault()
/linux-4.4.14/arch/nios2/include/asm/
Dpgtable.h102 pmdptr->pud.pgd.pgd = pmdval.pud.pgd.pgd; in set_pmd()
107 #define pgd_offset(mm, addr) ((mm)->pgd + pgd_index(addr))
Dpgalloc.h35 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
37 free_pages((unsigned long)pgd, PGD_ORDER); in pgd_free()
Dpage.h62 typedef struct { unsigned long pgd; } pgd_t; member
66 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/drivers/gpu/drm/nouveau/nvkm/engine/fifo/
Dgpfifogf100.c173 nvkm_vm_ref(NULL, &chan->vm, chan->pgd); in gf100_fifo_gpfifo_dtor()
174 nvkm_gpuobj_del(&chan->pgd); in gf100_fifo_gpfifo_dtor()
237 ret = nvkm_gpuobj_new(device, 0x10000, 0x1000, false, NULL, &chan->pgd); in gf100_fifo_gpfifo_new()
242 nvkm_wo32(chan->base.inst, 0x0200, lower_32_bits(chan->pgd->addr)); in gf100_fifo_gpfifo_new()
243 nvkm_wo32(chan->base.inst, 0x0204, upper_32_bits(chan->pgd->addr)); in gf100_fifo_gpfifo_new()
248 ret = nvkm_vm_ref(chan->base.vm, &chan->vm, chan->pgd); in gf100_fifo_gpfifo_new()
Dgpfifogk104.c186 nvkm_vm_ref(NULL, &chan->vm, chan->pgd); in gk104_fifo_gpfifo_dtor()
187 nvkm_gpuobj_del(&chan->pgd); in gk104_fifo_gpfifo_dtor()
270 ret = nvkm_gpuobj_new(device, 0x10000, 0x1000, false, NULL, &chan->pgd); in gk104_fifo_gpfifo_new()
275 nvkm_wo32(chan->base.inst, 0x0200, lower_32_bits(chan->pgd->addr)); in gk104_fifo_gpfifo_new()
276 nvkm_wo32(chan->base.inst, 0x0204, upper_32_bits(chan->pgd->addr)); in gk104_fifo_gpfifo_new()
281 ret = nvkm_vm_ref(chan->base.vm, &chan->vm, chan->pgd); in gk104_fifo_gpfifo_new()
Dchannv50.c209 nvkm_vm_ref(NULL, &chan->vm, chan->pgd); in nv50_fifo_chan_dtor()
211 nvkm_gpuobj_del(&chan->pgd); in nv50_fifo_chan_dtor()
261 &chan->pgd); in nv50_fifo_chan_ctor()
269 return nvkm_vm_ref(chan->base.vm, &chan->vm, chan->pgd); in nv50_fifo_chan_ctor()
/linux-4.4.14/arch/m32r/mm/
Dfault.c308 pgd_t *pgd, *pgd_k; in do_page_fault() local
312 pgd = (pgd_t *)*(unsigned long *)MPTB; in do_page_fault()
313 pgd = offset + (pgd_t *)pgd; in do_page_fault()
314 pgd_k = init_mm.pgd + offset; in do_page_fault()
324 pmd = pmd_offset(pgd, address); in do_page_fault()
Dmmu.S139 ; pgd = *(unsigned long *)MPTB;
143 not r2, r2 || slli r3, #2 ; r3: pgd offset
148 ld r2, @r2 ; r2: pgd base addr (MPTB reg.)
151 ; pmd = pmd_offset(pgd, address);
259 ; pgd = *(unsigned long *)MPTB;
265 add r3, r1 ; r3: pgd
266 ; pmd = pmd_offset(pgd, address);
/linux-4.4.14/arch/tile/include/asm/
Dpgtable_64.h71 #define pud_pte(pud) ((pud).pgd)
93 __pte_clear(&pudp->pgd); in pud_clear()
102 #define pud_ptfn(pud) hv_pte_get_ptfn((pud).pgd)
Dpgalloc.h46 set_pte(&pmdp->pud.pgd, pmd.pud.pgd); in set_pmd()
69 extern void pgd_free(struct mm_struct *mm, pgd_t *pgd);
Dpgtable_32.h115 #define pmd_pte(pmd) ((pmd).pud.pgd)
116 #define pmdp_ptep(pmdp) (&(pmdp)->pud.pgd)
Dmmu_context.h87 install_page_table(mm->pgd, __this_cpu_read(current_asid)); in enter_lazy_tlb()
111 install_page_table(next->pgd, asid); in switch_mm()
/linux-4.4.14/arch/cris/mm/
Dfault.c324 pgd_t *pgd, *pgd_k; in do_page_fault() local
329 pgd = (pgd_t *)per_cpu(current_pgd, smp_processor_id()) + offset; in do_page_fault()
330 pgd_k = init_mm.pgd + offset; in do_page_fault()
344 pud = pud_offset(pgd, address); in do_page_fault()
/linux-4.4.14/arch/m68k/sun3x/
Ddvma.c85 pgd_t *pgd; in dvma_map_cpu() local
98 pgd = pgd_offset_k(vaddr); in dvma_map_cpu()
104 if((pmd = pmd_alloc(&init_mm, pgd, vaddr)) == NULL) { in dvma_map_cpu()
/linux-4.4.14/include/trace/events/
Dxen.h254 __entry->pgdval = pgdval.pgd),
362 TP_PROTO(struct mm_struct *mm, pgd_t *pgd),
363 TP_ARGS(mm, pgd),
366 __field(pgd_t *, pgd)
369 __entry->pgd = pgd),
370 TP_printk("mm %p pgd %p", __entry->mm, __entry->pgd)
374 TP_PROTO(struct mm_struct *mm, pgd_t *pgd), \
375 TP_ARGS(mm, pgd))
/linux-4.4.14/arch/cris/include/asm/
Dpgalloc.h20 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
22 free_page((unsigned long)pgd); in pgd_free()
Dpage.h27 typedef struct { unsigned long pgd; } pgd_t; member
33 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/arch/um/kernel/skas/
Duaccess.c19 pgd_t *pgd; in virt_to_pte() local
26 pgd = pgd_offset(mm, addr); in virt_to_pte()
27 if (!pgd_present(*pgd)) in virt_to_pte()
30 pud = pud_offset(pgd, addr); in virt_to_pte()
Dmmu.c20 pgd_t *pgd; in init_stub_pte() local
25 pgd = pgd_offset(mm, proc); in init_stub_pte()
26 pud = pud_alloc(mm, pgd, proc); in init_stub_pte()
/linux-4.4.14/drivers/iommu/
Dio-pgtable-arm.c198 void *pgd; member
383 arm_lpae_iopte *ptep = data->pgd; in arm_lpae_map()
437 __arm_lpae_free_pgtable(data, ARM_LPAE_START_LVL(data), data->pgd); in arm_lpae_free_pgtable()
533 arm_lpae_iopte *ptep = data->pgd; in arm_lpae_unmap()
547 arm_lpae_iopte pte, *ptep = data->pgd; in arm_lpae_iova_to_phys()
725 data->pgd = __arm_lpae_alloc_pages(data->pgd_size, GFP_KERNEL, cfg); in arm_64_lpae_alloc_pgtable_s1()
726 if (!data->pgd) in arm_64_lpae_alloc_pgtable_s1()
733 cfg->arm_lpae_s1_cfg.ttbr[0] = virt_to_phys(data->pgd); in arm_64_lpae_alloc_pgtable_s1()
814 data->pgd = __arm_lpae_alloc_pages(data->pgd_size, GFP_KERNEL, cfg); in arm_64_lpae_alloc_pgtable_s2()
815 if (!data->pgd) in arm_64_lpae_alloc_pgtable_s2()
[all …]
/linux-4.4.14/arch/arc/mm/
Dfault.c34 pgd_t *pgd, *pgd_k; in handle_kernel_vaddr_fault() local
38 pgd = pgd_offset_fast(current->active_mm, address); in handle_kernel_vaddr_fault()
44 pud = pud_offset(pgd, address); in handle_kernel_vaddr_fault()
/linux-4.4.14/arch/xtensa/include/asm/
Dpgalloc.h36 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
38 free_page((unsigned long)pgd); in pgd_free()
/linux-4.4.14/arch/openrisc/include/asm/
Dpgalloc.h69 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
71 free_page((unsigned long)pgd); in pgd_free()
Dpage.h59 unsigned long pgd; member
67 #define pgd_val(x) ((x).pgd)
/linux-4.4.14/arch/cris/arch-v10/mm/
Dfault.c48 pgd_t* pgd = (pgd_t*)per_cpu(current_pgd, smp_processor_id()); in handle_mmu_bus_fault() local
84 pmd = (pmd_t *)(pgd + pgd_index(address)); in handle_mmu_bus_fault()
/linux-4.4.14/arch/arc/include/asm/
Dpage.h41 unsigned long pgd; member
48 #define pgd_val(x) ((x).pgd)

12