/arch/mn10300/include/asm/ |
H A D | pgalloc.h | 22 #define pmd_populate_kernel(mm, pmd, pte) \ 23 set_pmd(pmd, __pmd(__pa(pte) | _PAGE_TABLE)) 26 void pmd_populate(struct mm_struct *mm, pmd_t *pmd, struct page *pte) argument 28 set_pmd(pmd, __pmd((page_to_pfn(pte) << PAGE_SHIFT) | _PAGE_TABLE)); 30 #define pmd_pgtable(pmd) pmd_page(pmd)
|
/arch/sh/mm/ |
H A D | tlbex_32.c | 27 pmd_t *pmd; local 48 pmd = pmd_offset(pud, address); 49 if (pmd_none_or_clear_bad(pmd)) 51 pte = pte_offset_kernel(pmd, address);
|
H A D | pgtable.c | 43 void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) argument 45 set_pud(pud, __pud((unsigned long)pmd)); 53 void pmd_free(struct mm_struct *mm, pmd_t *pmd) argument 55 kmem_cache_free(pmd_cachep, pmd);
|
/arch/arm/mm/ |
H A D | hugetlbpage.c | 35 * On ARM, huge pages are backed by pmd's rather than pte's, so we do a lot 55 int pmd_huge(pmd_t pmd) argument 57 return pmd_val(pmd) && !(pmd_val(pmd) & PMD_TABLE_BIT);
|
H A D | idmap.c | 24 pmd_t *pmd; local 28 pmd = pmd_alloc_one(&init_mm, addr); 29 if (!pmd) { 30 pr_warn("Failed to allocate identity pmd.\n"); 38 memcpy(pmd, pmd_offset(pud, 0), 40 pud_populate(&init_mm, pud, pmd); 41 pmd += pmd_index(addr); 43 pmd = pmd_offset(pud, addr); 47 *pmd = __pmd((addr & PMD_MASK) | prot); 48 flush_pmd_entry(pmd); 55 pmd_t *pmd = pmd_offset(pud, addr); local [all...] |
H A D | pgd.c | 112 pmd_t *pmd; local 126 pmd = pmd_offset(pud, 0); 127 if (pmd_none_or_clear_bad(pmd)) 130 pte = pmd_pgtable(*pmd); 131 pmd_clear(pmd); 135 pmd_free(mm, pmd); 142 * Free modules/pkmap or identity pmd tables. 152 pmd = pmd_offset(pud, 0); 154 pmd_free(mm, pmd);
|
/arch/arm64/mm/ |
H A D | hugetlbpage.c | 47 int pmd_huge(pmd_t pmd) argument 49 return !(pmd_val(pmd) & PMD_TABLE_BIT);
|
/arch/mips/mm/ |
H A D | pgtable-32.c | 40 pmd_t *pmd; local 66 pmd = pmd_offset(pud, vaddr); 67 pte = pte_offset_kernel(pmd, vaddr);
|
H A D | hugetlbpage.c | 43 pmd_t *pmd = NULL; local 49 pmd = pmd_offset(pud, addr); 51 return (pte_t *) pmd; 77 int pmd_huge(pmd_t pmd) argument 79 return (pmd_val(pmd) & _PAGE_HUGE) != 0; 89 pmd_t *pmd, int write) 93 page = pte_page(*(pte_t *)pmd); 88 follow_huge_pmd(struct mm_struct *mm, unsigned long address, pmd_t *pmd, int write) argument
|
H A D | pgtable-64.c | 72 pmd_t pmd = pmd_mksplitting(*pmdp); local 73 set_pmd_at(vma->vm_mm, address, pmdp, pmd); 81 pmd_t pmd; local 83 pmd_val(pmd) = (page_to_pfn(page) << _PFN_SHIFT) | pgprot_val(prot); 85 return pmd; 89 pmd_t *pmdp, pmd_t pmd) 91 *pmdp = pmd; 88 set_pmd_at(struct mm_struct *mm, unsigned long addr, pmd_t *pmdp, pmd_t pmd) argument
|
/arch/mn10300/mm/ |
H A D | cache-inv-icache.c | 34 pmd_t *pmd; local 51 pmd = pmd_offset(pud, start); 52 if (!pmd || !pmd_val(*pmd)) 55 ppte = pte_offset_map(pmd, start);
|
H A D | cache-flush-icache.c | 56 pmd_t *pmd; local 73 pmd = pmd_offset(pud, start); 74 if (!pmd || !pmd_val(*pmd)) 77 ppte = pte_offset_map(pmd, start);
|
/arch/um/include/asm/ |
H A D | pgalloc.h | 13 #define pmd_populate_kernel(mm, pmd, pte) \ 14 set_pmd(pmd, __pmd(_PAGE_TABLE + (unsigned long) __pa(pte))) 16 #define pmd_populate(mm, pmd, pte) \ 17 set_pmd(pmd, __pmd(_PAGE_TABLE + \ 20 #define pmd_pgtable(pmd) pmd_page(pmd) 50 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) argument 52 free_page((unsigned long)pmd);
|
/arch/unicore32/mm/ |
H A D | pgd.c | 80 pmd_t *pmd; local 87 pmd = pmd_off(pgd, 0); 88 if (pmd_none(*pmd)) 90 if (pmd_bad(*pmd)) { 91 pmd_ERROR(*pmd); 92 pmd_clear(pmd); 96 pte = pmd_pgtable(*pmd); 97 pmd_clear(pmd); 99 pmd_free(mm, pmd);
|
/arch/x86/mm/ |
H A D | pgtable_32.c | 31 pmd_t *pmd; local 44 pmd = pmd_offset(pud, vaddr); 45 if (pmd_none(*pmd)) { 49 pte = pte_offset_kernel(pmd, vaddr);
|
/arch/xtensa/mm/ |
H A D | mmu.c | 24 pmd_t *pmd = pmd_offset(pgd, vaddr); local 38 for (i = 0; i < n_pages; i += PTRS_PER_PTE, ++pmd) { 41 BUG_ON(!pmd_none(*pmd)); 42 set_pmd(pmd, __pmd(((unsigned long)cur_pte) & PAGE_MASK)); 43 BUG_ON(cur_pte != pte_offset_kernel(pmd, 0)); 44 pr_debug("%s: pmd: 0x%p, pte: 0x%p\n", 45 __func__, pmd, cur_pte);
|
/arch/alpha/include/asm/ |
H A D | pgalloc.h | 14 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) argument 16 pmd_set(pmd, (pte_t *)(page_to_pa(pte) + PAGE_OFFSET)); 18 #define pmd_pgtable(pmd) pmd_page(pmd) 21 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) argument 23 pmd_set(pmd, pte); 27 pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) argument 29 pgd_set(pgd, pmd); 48 pmd_free(struct mm_struct *mm, pmd_t *pmd) argument 50 free_page((unsigned long)pmd); [all...] |
/arch/arc/mm/ |
H A D | fault.c | 28 pmd_t *pmd, *pmd_k; local 41 pmd = pmd_offset(pud, address); 46 set_pmd(pmd, *pmd_k);
|
/arch/arm/include/asm/ |
H A D | pgtable-2level-types.h | 34 typedef struct { pmdval_t pmd; } pmd_t; member in struct:__anon169 39 #define pmd_val(x) ((x).pmd)
|
/arch/arm/lib/ |
H A D | uaccess_with_memcpy.c | 30 pmd_t *pmd; local 43 pmd = pmd_offset(pud, addr); 44 if (unlikely(pmd_none(*pmd))) 48 * A pmd can be bad if it refers to a HugeTLB or THP page. 50 * Both THP and HugeTLB pages have the same pmd layout 57 if (unlikely(pmd_thp_or_huge(*pmd))) { 60 if (unlikely(!pmd_thp_or_huge(*pmd) 61 || pmd_hugewillfault(*pmd) 62 || pmd_trans_splitting(*pmd))) { 72 if (unlikely(pmd_bad(*pmd))) [all...] |
/arch/cris/arch-v10/mm/ |
H A D | fault.c | 49 pmd_t *pmd; local 84 pmd = (pmd_t *)(pgd + pgd_index(address)); 85 if (pmd_none(*pmd)) 87 pte = *pte_offset_kernel(pmd, address);
|
/arch/hexagon/include/asm/ |
H A D | pgalloc.h | 96 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, argument 103 set_pmd(pmd, __pmd(((unsigned long)page_to_pfn(pte) << PAGE_SHIFT) | 109 * share the same pmd's for their kernel mappings, but the v0.3 116 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, argument 129 set_pmd(pmd, __pmd(((unsigned long)__pa(pte)) | HEXAGON_L1_PTE_SIZE)); 135 pmdindex = (pgd_t *)pmd - mm->pgd;
|
/arch/openrisc/include/asm/ |
H A D | pgalloc.h | 30 #define pmd_populate_kernel(mm, pmd, pte) \ 31 set_pmd(pmd, __pmd(_KERNPG_TABLE + __pa(pte))) 33 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, argument 36 set_pmd(pmd, __pmd(_KERNPG_TABLE + 104 #define pmd_pgtable(pmd) pmd_page(pmd)
|
/arch/score/include/asm/ |
H A D | pgalloc.h | 6 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, argument 9 set_pmd(pmd, __pmd((unsigned long)pte)); 12 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, argument 15 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); 18 #define pmd_pgtable(pmd) pmd_page(pmd)
|
/arch/score/mm/ |
H A D | fault.c | 208 pmd_t *pmd, *pmd_k; local 223 pmd = pmd_offset(pud, address); 227 set_pmd(pmd, *pmd_k);
|