/linux-4.4.14/arch/powerpc/include/asm/ |
D | pgtable.h | 33 static inline int pte_write(pte_t pte) in pte_write() argument 34 { return (pte_val(pte) & (_PAGE_RW | _PAGE_RO)) != _PAGE_RO; } in pte_write() 35 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 36 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 37 static inline int pte_special(pte_t pte) { return pte_val(pte) & _PAGE_SPECIAL; } in pte_special() argument 38 static inline int pte_none(pte_t pte) { return (pte_val(pte) & ~_PTE_NONE_MASK) == 0; } in pte_none() argument 39 static inline pgprot_t pte_pgprot(pte_t pte) { return __pgprot(pte_val(pte) & PAGE_PROT_BITS); } in pte_pgprot() argument 47 static inline int pte_protnone(pte_t pte) in pte_protnone() argument 49 return (pte_val(pte) & in pte_protnone() 59 static inline int pte_present(pte_t pte) in pte_present() argument [all …]
|
D | pte-hash64-64k.h | 50 static inline real_pte_t __real_pte(pte_t pte, pte_t *ptep) in __real_pte() argument 54 rpte.pte = pte; in __real_pte() 56 if (pte_val(pte) & _PAGE_COMBO) { in __real_pte() 69 if ((pte_val(rpte.pte) & _PAGE_COMBO)) in __rpte_to_hidx() 71 return (pte_val(rpte.pte) >> 12) & 0xf; in __rpte_to_hidx() 74 #define __rpte_to_pte(r) ((r).pte) 76 (pte_val(rpte.pte) & (_PAGE_HPTE_SUB0 >> (index))) 94 #define pte_pagesize_index(mm, addr, pte) \ argument 95 (((pte) & _PAGE_COMBO)? MMU_PAGE_4K: MMU_PAGE_64K)
|
D | pgalloc-32.h | 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) 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) 40 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 42 free_page((unsigned long)pte); in pte_free_kernel()
|
D | hugetlb.h | 87 pte_t pte); 116 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 118 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 134 pte_t pte; in huge_ptep_clear_flush() local 135 pte = huge_ptep_get_and_clear(vma->vm_mm, addr, ptep); in huge_ptep_clear_flush() 139 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 141 return pte_none(pte); in huge_pte_none() 144 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 146 return pte_wrprotect(pte); in huge_pte_wrprotect() 151 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument [all …]
|
D | pgalloc-64.h | 76 #define pmd_populate_kernel(mm, pmd, pte) pmd_set(pmd, (unsigned long)(pte)) argument 89 pte_t *pte; in pte_alloc_one() local 91 pte = pte_alloc_one_kernel(mm, address); in pte_alloc_one() 92 if (!pte) in pte_alloc_one() 94 page = virt_to_page(pte); in pte_alloc_one() 102 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 104 free_page((unsigned long)pte); in pte_free_kernel() 178 pte_t *pte) in pmd_populate_kernel() argument 180 pmd_set(pmd, (unsigned long)pte); in pmd_populate_kernel() 206 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument [all …]
|
/linux-4.4.14/arch/um/include/asm/ |
D | pgtable.h | 123 static inline int pte_none(pte_t pte) in pte_none() argument 125 return pte_is_zero(pte); in pte_none() 132 static inline int pte_read(pte_t pte) in pte_read() argument 134 return((pte_get_bits(pte, _PAGE_USER)) && in pte_read() 135 !(pte_get_bits(pte, _PAGE_PROTNONE))); in pte_read() 138 static inline int pte_exec(pte_t pte){ in pte_exec() argument 139 return((pte_get_bits(pte, _PAGE_USER)) && in pte_exec() 140 !(pte_get_bits(pte, _PAGE_PROTNONE))); in pte_exec() 143 static inline int pte_write(pte_t pte) in pte_write() argument 145 return((pte_get_bits(pte, _PAGE_RW)) && in pte_write() [all …]
|
D | page.h | 41 #define pte_get_bits(pte, bits) ((pte).pte_low & (bits)) argument 42 #define pte_set_bits(pte, bits) ((pte).pte_low |= (bits)) argument 43 #define pte_clear_bits(pte, bits) ((pte).pte_low &= ~(bits)) argument 47 #define pte_is_zero(pte) (!((pte).pte_low & ~_PAGE_NEWPAGE) && !(pte).pte_high) argument 48 #define pte_set_val(pte, phys, prot) \ argument 49 ({ (pte).pte_high = (phys) >> 32; \ 50 (pte).pte_low = (phys) | pgprot_val(prot); }) 60 typedef struct { unsigned long pte; } pte_t; member 69 #define pte_val(x) ((x).pte) 72 #define pte_get_bits(p, bits) ((p).pte & (bits)) [all …]
|
D | pgalloc.h | 13 #define pmd_populate_kernel(mm, pmd, pte) \ argument 14 set_pmd(pmd, __pmd(_PAGE_TABLE + (unsigned long) __pa(pte))) 16 #define pmd_populate(mm, pmd, pte) \ argument 18 ((unsigned long long)page_to_pfn(pte) << \ 31 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 33 free_page((unsigned long) pte); in pte_free_kernel() 36 static inline void pte_free(struct mm_struct *mm, pgtable_t pte) in pte_free() argument 38 pgtable_page_dtor(pte); in pte_free() 39 __free_page(pte); in pte_free() 42 #define __pte_free_tlb(tlb,pte, address) \ argument [all …]
|
D | pgtable-3level.h | 96 static inline unsigned long pte_pfn(pte_t pte) in pte_pfn() argument 98 return phys_to_pfn(pte_val(pte)); in pte_pfn() 103 pte_t pte; in pfn_pte() local 106 pte_set_val(pte, phys, pgprot); in pfn_pte() 107 return pte; in pfn_pte()
|
/linux-4.4.14/arch/m68k/include/asm/ |
D | mcf_pgtable.h | 158 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 160 pte_val(pte) = (pte_val(pte) & CF_PAGE_CHG_MASK) | pgprot_val(newprot); in pte_modify() 161 return pte; in pte_modify() 171 #define __pte_page(pte) ((unsigned long) (pte_val(pte) & PAGE_MASK)) argument 174 static inline int pte_none(pte_t pte) in pte_none() argument 176 return !pte_val(pte); in pte_none() 179 static inline int pte_present(pte_t pte) in pte_present() argument 181 return pte_val(pte) & CF_PAGE_VALID; in pte_present() 190 #define pte_pagenr(pte) ((__pte_page(pte) - PAGE_OFFSET) >> PAGE_SHIFT) argument 191 #define pte_page(pte) virt_to_page(__pte_page(pte)) argument [all …]
|
D | sun3_pgtable.h | 104 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 106 pte_val(pte) = (pte_val(pte) & SUN3_PAGE_CHG_MASK) | pgprot_val(newprot); in pte_modify() 107 return pte; in pte_modify() 117 #define __pte_page(pte) \ argument 118 ((unsigned long) __va ((pte_val (pte) & SUN3_PAGE_PGNUM_MASK) << PAGE_SHIFT)) 122 static inline int pte_none (pte_t pte) { return !pte_val (pte); } in pte_none() argument 123 static inline int pte_present (pte_t pte) { return pte_val (pte) & SUN3_PAGE_VALID; } in pte_present() argument 129 #define pte_pfn(pte) (pte_val(pte) & SUN3_PAGE_PGNUM_MASK) argument 133 #define pte_page(pte) virt_to_page(__pte_page(pte)) argument 166 static inline int pte_write(pte_t pte) { return pte_val(pte) & SUN3_PAGE_WRITEABLE; } in pte_write() argument [all …]
|
D | motorola_pgtable.h | 102 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 104 pte_val(pte) = (pte_val(pte) & _PAGE_CHG_MASK) | pgprot_val(newprot); in pte_modify() 105 return pte; in pte_modify() 124 #define __pte_page(pte) ((unsigned long)__va(pte_val(pte) & PAGE_MASK)) argument 129 #define pte_none(pte) (!pte_val(pte)) argument 130 #define pte_present(pte) (pte_val(pte) & (_PAGE_PRESENT | _PAGE_PROTNONE)) argument 133 #define pte_page(pte) virt_to_page(__va(pte_val(pte))) argument 134 #define pte_pfn(pte) (pte_val(pte) >> PAGE_SHIFT) argument 167 static inline int pte_write(pte_t pte) { return !(pte_val(pte) & _PAGE_RONLY); } in pte_write() argument 168 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument [all …]
|
D | motorola_pgalloc.h | 12 pte_t *pte; in pte_alloc_one_kernel() local 14 pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO); in pte_alloc_one_kernel() 15 if (pte) { in pte_alloc_one_kernel() 16 __flush_page_to_ram(pte); in pte_alloc_one_kernel() 17 flush_tlb_kernel_page(pte); in pte_alloc_one_kernel() 18 nocache_page(pte); in pte_alloc_one_kernel() 21 return pte; in pte_alloc_one_kernel() 24 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 26 cache_page(pte); in pte_free_kernel() 27 free_page((unsigned long) pte); in pte_free_kernel() [all …]
|
D | mcf_pgalloc.h | 7 extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 9 free_page((unsigned long) pte); in pte_free_kernel() 39 #define pmd_populate_kernel(mm, pmd, pte) (pmd_val(*pmd) = (unsigned long)(pte)) argument 55 pte_t *pte; in pte_alloc_one() local 64 pte = kmap(page); in pte_alloc_one() 65 if (pte) { in pte_alloc_one() 66 clear_page(pte); in pte_alloc_one() 67 __flush_page_to_ram(pte); in pte_alloc_one() 68 flush_tlb_kernel_page(pte); in pte_alloc_one() 69 nocache_page(pte); in pte_alloc_one() [all …]
|
D | sun3_pgalloc.h | 20 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 22 free_page((unsigned long) pte); in pte_free_kernel() 31 #define __pte_free_tlb(tlb,pte,addr) \ argument 33 pgtable_page_dtor(pte); \ 34 tlb_remove_page((tlb), pte); \ 66 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument 68 pmd_val(*pmd) = __pa((unsigned long)pte); in pmd_populate_kernel() 99 #define pgd_populate(mm, pmd, pte) BUG() argument
|
D | mmu_context.h | 103 pte_t *pte; in load_ksp_mmu() local 133 pte = (mmuar >= PAGE_OFFSET) ? pte_offset_kernel(pmd, mmuar) in load_ksp_mmu() 135 if (pte_none(*pte) || !pte_present(*pte)) in load_ksp_mmu() 138 set_pte(pte, pte_mkyoung(*pte)); in load_ksp_mmu() 140 if (!pte_dirty(*pte) && mmuar <= PAGE_OFFSET) in load_ksp_mmu() 141 set_pte(pte, pte_wrprotect(*pte)); in load_ksp_mmu() 144 (((int)(pte->pte) & (int)CF_PAGE_MMUTR_MASK) in load_ksp_mmu() 147 mmu_write(MMUDR, (pte_val(*pte) & PAGE_MASK) | in load_ksp_mmu() 148 ((pte->pte) & CF_PAGE_MMUDR_MASK) | MMUDR_SZ_8KB | MMUDR_X); in load_ksp_mmu()
|
/linux-4.4.14/arch/powerpc/kvm/ |
D | book3s_mmu_hpte.c | 67 void kvmppc_mmu_hpte_cache_map(struct kvm_vcpu *vcpu, struct hpte_cache *pte) in kvmppc_mmu_hpte_cache_map() argument 72 trace_kvm_book3s_mmu_map(pte); in kvmppc_mmu_hpte_cache_map() 77 index = kvmppc_mmu_hash_pte(pte->pte.eaddr); in kvmppc_mmu_hpte_cache_map() 78 hlist_add_head_rcu(&pte->list_pte, &vcpu3s->hpte_hash_pte[index]); in kvmppc_mmu_hpte_cache_map() 81 index = kvmppc_mmu_hash_pte_long(pte->pte.eaddr); in kvmppc_mmu_hpte_cache_map() 82 hlist_add_head_rcu(&pte->list_pte_long, in kvmppc_mmu_hpte_cache_map() 86 index = kvmppc_mmu_hash_vpte(pte->pte.vpage); in kvmppc_mmu_hpte_cache_map() 87 hlist_add_head_rcu(&pte->list_vpte, &vcpu3s->hpte_hash_vpte[index]); in kvmppc_mmu_hpte_cache_map() 90 index = kvmppc_mmu_hash_vpte_long(pte->pte.vpage); in kvmppc_mmu_hpte_cache_map() 91 hlist_add_head_rcu(&pte->list_vpte_long, in kvmppc_mmu_hpte_cache_map() [all …]
|
D | book3s_pr_papr.c | 91 unsigned long pte[2]; in kvmppc_h_pr_remove() local 96 copy_from_user(pte, (void __user *)pteg, sizeof(pte)); in kvmppc_h_pr_remove() 97 pte[0] = be64_to_cpu((__force __be64)pte[0]); in kvmppc_h_pr_remove() 98 pte[1] = be64_to_cpu((__force __be64)pte[1]); in kvmppc_h_pr_remove() 101 if ((pte[0] & HPTE_V_VALID) == 0 || in kvmppc_h_pr_remove() 102 ((flags & H_AVPN) && (pte[0] & ~0x7fUL) != avpn) || in kvmppc_h_pr_remove() 103 ((flags & H_ANDCOND) && (pte[0] & avpn) != 0)) in kvmppc_h_pr_remove() 108 rb = compute_tlbie_rb(pte[0], pte[1], pte_index); in kvmppc_h_pr_remove() 112 kvmppc_set_gpr(vcpu, 4, pte[0]); in kvmppc_h_pr_remove() 113 kvmppc_set_gpr(vcpu, 5, pte[1]); in kvmppc_h_pr_remove() [all …]
|
D | trace_pr.h | 65 TP_PROTO(struct hpte_cache *pte), 66 TP_ARGS(pte), 78 __entry->host_vpn = pte->host_vpn; 79 __entry->pfn = pte->pfn; 80 __entry->eaddr = pte->pte.eaddr; 81 __entry->vpage = pte->pte.vpage; 82 __entry->raddr = pte->pte.raddr; 83 __entry->flags = (pte->pte.may_read ? 0x4 : 0) | 84 (pte->pte.may_write ? 0x2 : 0) | 85 (pte->pte.may_execute ? 0x1 : 0); [all …]
|
D | book3s_32_mmu.c | 82 struct kvmppc_pte *pte, bool data, 96 struct kvmppc_pte pte; in kvmppc_mmu_book3s_32_ea_to_vp() local 98 if (!kvmppc_mmu_book3s_32_xlate_bat(vcpu, eaddr, &pte, data, false)) in kvmppc_mmu_book3s_32_ea_to_vp() 99 return pte.vpage; in kvmppc_mmu_book3s_32_ea_to_vp() 145 struct kvmppc_pte *pte, bool data, in kvmppc_mmu_book3s_32_xlate_bat() argument 177 pte->vpage = (((u64)eaddr >> 12) & 0xffff) | vsid; in kvmppc_mmu_book3s_32_xlate_bat() 179 pte->raddr = bat->brpn | (eaddr & ~bat->bepi_mask); in kvmppc_mmu_book3s_32_xlate_bat() 180 pte->may_read = bat->pp; in kvmppc_mmu_book3s_32_xlate_bat() 181 pte->may_write = bat->pp > 1; in kvmppc_mmu_book3s_32_xlate_bat() 182 pte->may_execute = true; in kvmppc_mmu_book3s_32_xlate_bat() [all …]
|
D | book3s_32_mmu_host.c | 61 void kvmppc_mmu_invalidate_pte(struct kvm_vcpu *vcpu, struct hpte_cache *pte) in kvmppc_mmu_invalidate_pte() argument 66 pteg = (u32*)pte->slot; in kvmppc_mmu_invalidate_pte() 71 asm volatile ("tlbie %0" : : "r" (pte->pte.eaddr) : "memory"); in kvmppc_mmu_invalidate_pte() 155 struct hpte_cache *pte; in kvmppc_mmu_map_page() local 245 pte = kvmppc_mmu_hpte_cache_next(vcpu); in kvmppc_mmu_map_page() 246 if (!pte) { in kvmppc_mmu_map_page() 258 pte->slot = (ulong)&pteg[rr]; in kvmppc_mmu_map_page() 259 pte->host_vpn = vpn; in kvmppc_mmu_map_page() 260 pte->pte = *orig_pte; in kvmppc_mmu_map_page() 261 pte->pfn = hpaddr >> PAGE_SHIFT; in kvmppc_mmu_map_page() [all …]
|
D | book3s_hv_rm_mmu.c | 232 pte_t pte; in kvmppc_do_h_enter() local 248 pte = kvmppc_read_update_linux_pte(ptep, writing); in kvmppc_do_h_enter() 249 if (pte_present(pte) && !pte_protnone(pte)) { in kvmppc_do_h_enter() 250 if (writing && !pte_write(pte)) in kvmppc_do_h_enter() 253 is_io = hpte_cache_bits(pte_val(pte)); in kvmppc_do_h_enter() 254 pa = pte_pfn(pte) << PAGE_SHIFT; in kvmppc_do_h_enter() 305 u64 pte; in kvmppc_do_h_enter() local 308 pte = be64_to_cpu(hpte[0]); in kvmppc_do_h_enter() 309 if (!(pte & (HPTE_V_VALID | HPTE_V_ABSENT))) in kvmppc_do_h_enter() 311 __unlock_hpte(hpte, pte); in kvmppc_do_h_enter() [all …]
|
/linux-4.4.14/arch/mips/include/asm/ |
D | pgtable.h | 135 #define pte_none(pte) (!(((pte).pte_high) & ~_PAGE_GLOBAL)) argument 136 #define pte_present(pte) ((pte).pte_low & _PAGE_PRESENT) argument 137 #define pte_no_exec(pte) ((pte).pte_low & _PAGE_NO_EXEC) argument 139 static inline void set_pte(pte_t *ptep, pte_t pte) in set_pte() argument 141 ptep->pte_high = pte.pte_high; in set_pte() 143 ptep->pte_low = pte.pte_low; in set_pte() 145 if (pte.pte_high & _PAGE_GLOBAL) { in set_pte() 170 #define pte_none(pte) (!(pte_val(pte) & ~_PAGE_GLOBAL)) argument 171 #define pte_present(pte) (pte_val(pte) & _PAGE_PRESENT) argument 172 #define pte_no_exec(pte) (pte_val(pte) & _PAGE_NO_EXEC) argument [all …]
|
D | pgalloc.h | 17 pte_t *pte) in pmd_populate_kernel() argument 19 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel() 23 pgtable_t pte) in pmd_populate() argument 25 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate() 70 pte_t *pte; in pte_alloc_one_kernel() local 72 pte = (pte_t *) __get_free_pages(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO, PTE_ORDER); in pte_alloc_one_kernel() 74 return pte; in pte_alloc_one_kernel() 80 struct page *pte; in pte_alloc_one() local 82 pte = alloc_pages(GFP_KERNEL | __GFP_REPEAT, PTE_ORDER); in pte_alloc_one() 83 if (!pte) in pte_alloc_one() [all …]
|
D | hugetlb.h | 51 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 53 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 60 pte_t pte = *ptep; in huge_ptep_get_and_clear() local 64 return pte; in huge_ptep_get_and_clear() 73 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 75 unsigned long val = pte_val(pte) & ~_PAGE_GLOBAL; in huge_pte_none() 79 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 81 return pte_wrprotect(pte); in huge_pte_wrprotect() 92 pte_t *ptep, pte_t pte, in huge_ptep_set_access_flags() argument 95 int changed = !pte_same(*ptep, pte); in huge_ptep_set_access_flags() [all …]
|
D | pgtable-32.h | 112 pte_t pte; in pfn_pte() local 114 pte.pte_low = (pfn >> _PAGE_PRESENT_SHIFT) | in pfn_pte() 116 pte.pte_high = (pfn << _PFN_SHIFT) | in pfn_pte() 118 return pte; in pfn_pte() 126 #define pte_pfn(x) ((unsigned long)((x).pte >> (PAGE_SHIFT + 2))) 129 #define pte_pfn(x) ((unsigned long)((x).pte >> _PFN_SHIFT)) 156 #define pte_unmap(pte) ((void)(pte)) argument 164 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) argument 175 #define __pte_to_swp_entry(pte) ((swp_entry_t) { (pte).pte_high }) argument 189 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) argument
|
D | pgtable-64.h | 228 #define pte_pfn(x) ((unsigned long)((x).pte >> (PAGE_SHIFT + 2))) 231 #define pte_pfn(x) ((unsigned long)((x).pte >> _PFN_SHIFT)) 273 #define pte_unmap(pte) ((void)(pte)) argument 286 { pte_t pte; pte_val(pte) = (type << 16) | (offset << 24); return pte; } in mk_swap_pte() local 291 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) argument
|
/linux-4.4.14/arch/cris/include/asm/ |
D | pgtable.h | 114 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITE; } in pte_write() argument 115 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_MODIFIED; } in pte_dirty() argument 116 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 117 static inline int pte_special(pte_t pte) { return 0; } in pte_special() argument 119 static inline pte_t pte_wrprotect(pte_t pte) in pte_wrprotect() argument 121 pte_val(pte) &= ~(_PAGE_WRITE | _PAGE_SILENT_WRITE); in pte_wrprotect() 122 return pte; in pte_wrprotect() 125 static inline pte_t pte_mkclean(pte_t pte) in pte_mkclean() argument 127 pte_val(pte) &= ~(_PAGE_MODIFIED | _PAGE_SILENT_WRITE); in pte_mkclean() 128 return pte; in pte_mkclean() [all …]
|
D | pgalloc.h | 7 #define pmd_populate_kernel(mm, pmd, pte) pmd_set(pmd, pte) argument 8 #define pmd_populate(mm, pmd, pte) pmd_set(pmd, page_address(pte)) argument 27 pte_t *pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO); in pte_alloc_one_kernel() local 28 return pte; in pte_alloc_one_kernel() 33 struct page *pte; in pte_alloc_one() local 34 pte = alloc_pages(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO, 0); in pte_alloc_one() 35 if (!pte) in pte_alloc_one() 37 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() 38 __free_page(pte); in pte_alloc_one() 41 return pte; in pte_alloc_one() [all …]
|
/linux-4.4.14/arch/openrisc/include/asm/ |
D | pgtable.h | 237 static inline int pte_read(pte_t pte) { return pte_val(pte) & _PAGE_READ; } in pte_read() argument 238 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITE; } in pte_write() argument 239 static inline int pte_exec(pte_t pte) { return pte_val(pte) & _PAGE_EXEC; } in pte_exec() argument 240 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 241 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 242 static inline int pte_special(pte_t pte) { return 0; } in pte_special() argument 243 static inline pte_t pte_mkspecial(pte_t pte) { return pte; } in pte_mkspecial() argument 245 static inline pte_t pte_wrprotect(pte_t pte) in pte_wrprotect() argument 247 pte_val(pte) &= ~(_PAGE_WRITE); in pte_wrprotect() 248 return pte; in pte_wrprotect() [all …]
|
D | pgalloc.h | 30 #define pmd_populate_kernel(mm, pmd, pte) \ argument 31 set_pmd(pmd, __pmd(_KERNPG_TABLE + __pa(pte))) 34 struct page *pte) in pmd_populate() argument 37 ((unsigned long)page_to_pfn(pte) << in pmd_populate() 79 struct page *pte; in pte_alloc_one() local 80 pte = alloc_pages(GFP_KERNEL|__GFP_REPEAT, 0); in pte_alloc_one() 81 if (!pte) in pte_alloc_one() 83 clear_page(page_address(pte)); in pte_alloc_one() 84 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() 85 __free_page(pte); in pte_alloc_one() [all …]
|
/linux-4.4.14/arch/hexagon/include/asm/ |
D | pgtable.h | 175 #define pte_special(pte) 0 argument 176 #define pte_mkspecial(pte) (pte) argument 180 #define pte_mkhuge(pte) __pte((pte_val(pte) & ~0x3) | HVM_HUGEPAGE_SIZE) argument 187 extern void sync_icache_dcache(pte_t pte); 189 #define pte_present_exec_user(pte) \ argument 190 ((pte_val(pte) & (_PAGE_EXECUTE | _PAGE_USER)) == \ 295 static inline int pte_none(pte_t pte) in pte_none() argument 297 return pte_val(pte) == _NULL_PTE; in pte_none() 303 static inline int pte_present(pte_t pte) in pte_present() argument 305 return pte_val(pte) & _PAGE_PRESENT; in pte_present() [all …]
|
D | pgalloc.h | 65 struct page *pte; in pte_alloc_one() local 67 pte = alloc_page(GFP_KERNEL | __GFP_REPEAT | __GFP_ZERO); in pte_alloc_one() 68 if (!pte) in pte_alloc_one() 70 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() 71 __free_page(pte); in pte_alloc_one() 74 return pte; in pte_alloc_one() 85 static inline void pte_free(struct mm_struct *mm, struct page *pte) in pte_free() argument 87 pgtable_page_dtor(pte); in pte_free() 88 __free_page(pte); in pte_free() 91 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument [all …]
|
/linux-4.4.14/arch/arm/include/asm/ |
D | pgtable.h | 55 #define pte_ERROR(pte) __pte_error(__FILE__, __LINE__, pte) argument 196 #define __pte_unmap(pte) do { } while (0) argument 199 #define __pte_unmap(pte) kunmap_atomic(pte) argument 207 #define pte_unmap(pte) __pte_unmap(pte) argument 209 #define pte_pfn(pte) ((pte_val(pte) & PHYS_MASK) >> PAGE_SHIFT) argument 212 #define pte_page(pte) pfn_to_page(pte_pfn(pte)) argument 217 #define pte_isset(pte, val) ((u32)(val) == (val) ? pte_val(pte) & (val) \ argument 218 : !!(pte_val(pte) & (val))) 219 #define pte_isclear(pte, val) (!(pte_val(pte) & (val))) argument 221 #define pte_none(pte) (!pte_val(pte)) argument [all …]
|
D | pgalloc.h | 53 #define pud_populate(mm,pmd,pte) BUG() argument 62 static inline void clean_pte_table(pte_t *pte) in clean_pte_table() argument 64 clean_dcache_area(pte + PTE_HWTABLE_PTRS, PTE_HWTABLE_SIZE); in clean_pte_table() 86 pte_t *pte; in pte_alloc_one_kernel() local 88 pte = (pte_t *)__get_free_page(PGALLOC_GFP); in pte_alloc_one_kernel() 89 if (pte) in pte_alloc_one_kernel() 90 clean_pte_table(pte); in pte_alloc_one_kernel() 92 return pte; in pte_alloc_one_kernel() 98 struct page *pte; in pte_alloc_one() local 101 pte = alloc_pages(PGALLOC_GFP | __GFP_HIGHMEM, 0); in pte_alloc_one() [all …]
|
D | kvm_mmu.h | 78 static inline void kvm_set_pte(pte_t *pte, pte_t new_pte) in kvm_set_pte() argument 80 *pte = new_pte; in kvm_set_pte() 85 flush_pmd_entry(pte); in kvm_set_pte() 103 static inline void kvm_clean_pte(pte_t *pte) in kvm_clean_pte() argument 105 clean_pte_table(pte); in kvm_clean_pte() 108 static inline void kvm_set_s2pte_writable(pte_t *pte) in kvm_set_s2pte_writable() argument 110 pte_val(*pte) |= L_PTE_S2_RDWR; in kvm_set_s2pte_writable() 118 static inline void kvm_set_s2pte_readonly(pte_t *pte) in kvm_set_s2pte_readonly() argument 120 pte_val(*pte) = (pte_val(*pte) & ~L_PTE_S2_RDWR) | L_PTE_S2_RDONLY; in kvm_set_s2pte_readonly() 123 static inline bool kvm_s2pte_readonly(pte_t *pte) in kvm_s2pte_readonly() argument [all …]
|
D | pgtable-3level.h | 206 #define set_pte_ext(ptep,pte,ext) cpu_set_pte_ext(ptep,__pte(pte_val(pte)|(ext))) argument 208 #define pte_huge(pte) (pte_val(pte) && !(pte_val(pte) & PTE_TABLE_BIT)) argument 209 #define pte_mkhuge(pte) (__pte(pte_val(pte) & ~PTE_TABLE_BIT)) argument 216 #define pte_special(pte) (pte_isset((pte), L_PTE_SPECIAL)) argument 217 static inline pte_t pte_mkspecial(pte_t pte) in pte_mkspecial() argument 219 pte_val(pte) |= L_PTE_SPECIAL; in pte_mkspecial() 220 return pte; in pte_mkspecial()
|
D | hugetlb.h | 56 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 58 return pte_none(pte); in huge_pte_none() 61 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 63 return pte_wrprotect(pte); in huge_pte_wrprotect()
|
D | hugetlb-3level.h | 41 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 43 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 66 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 68 return ptep_set_access_flags(vma, addr, ptep, pte, dirty); in huge_ptep_set_access_flags()
|
D | pgtable-2level.h | 214 #define set_pte_ext(ptep,pte,ext) cpu_set_pte_ext(ptep,pte,ext) argument 215 #define pte_special(pte) (0) argument 216 static inline pte_t pte_mkspecial(pte_t pte) { return pte; } in pte_mkspecial() argument
|
D | proc-fns.h | 69 void (*set_pte_ext)(pte_t *ptep, pte_t pte); 71 void (*set_pte_ext)(pte_t *ptep, pte_t pte, unsigned int ext); 87 extern void cpu_set_pte_ext(pte_t *ptep, pte_t pte); 89 extern void cpu_set_pte_ext(pte_t *ptep, pte_t pte, unsigned int ext);
|
/linux-4.4.14/arch/microblaze/include/asm/ |
D | pgtable.h | 40 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) argument 85 static inline int pte_special(pte_t pte) { return 0; } in pte_special() argument 87 static inline pte_t pte_mkspecial(pte_t pte) { return pte; } in pte_mkspecial() argument 296 #define pte_none(pte) ((pte_val(pte) & ~_PTE_NONE_MASK) == 0) argument 297 #define pte_present(pte) (pte_val(pte) & _PAGE_PRESENT) argument 332 static inline int pte_read(pte_t pte) { return pte_val(pte) & _PAGE_USER; } in pte_read() argument 333 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_RW; } in pte_write() argument 334 static inline int pte_exec(pte_t pte) { return pte_val(pte) & _PAGE_EXEC; } in pte_exec() argument 335 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 336 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument [all …]
|
D | pgalloc.h | 149 static inline void pte_free_fast(pte_t *pte) in pte_free_fast() argument 151 *(unsigned long **)pte = pte_quicklist; in pte_free_fast() 152 pte_quicklist = (unsigned long *) pte; in pte_free_fast() 156 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 158 free_page((unsigned long)pte); in pte_free_kernel() 172 #define __pte_free_tlb(tlb, pte, addr) pte_free((tlb)->mm, (pte)) argument 174 #define pmd_populate(mm, pmd, pte) \ argument 175 (pmd_val(*(pmd)) = (unsigned long)page_address(pte)) 177 #define pmd_populate_kernel(mm, pmd, pte) \ argument 178 (pmd_val(*(pmd)) = (unsigned long) (pte)) [all …]
|
/linux-4.4.14/arch/score/include/asm/ |
D | pgtable.h | 66 #define pte_pfn(x) ((unsigned long)((x).pte >> PAGE_SHIFT)) 91 #define pte_unmap(pte) ((void)(pte)) argument 93 #define __pte_to_swp_entry(pte) \ argument 94 ((swp_entry_t) { pte_val(pte)}) 100 static inline pte_t pte_mkspecial(pte_t pte) { return pte; } in pte_mkspecial() argument 120 #define pte_none(pte) (!(pte_val(pte) & ~_PAGE_GLOBAL)) argument 121 #define pte_present(pte) (pte_val(pte) & _PAGE_PRESENT) argument 177 static inline int pte_write(pte_t pte) in pte_write() argument 179 return pte_val(pte) & _PAGE_WRITE; in pte_write() 182 static inline int pte_dirty(pte_t pte) in pte_dirty() argument [all …]
|
D | pgalloc.h | 7 pte_t *pte) in pmd_populate_kernel() argument 9 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel() 13 pgtable_t pte) in pmd_populate() argument 15 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate() 43 pte_t *pte; in pte_alloc_one_kernel() local 45 pte = (pte_t *) __get_free_pages(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO, in pte_alloc_one_kernel() 48 return pte; in pte_alloc_one_kernel() 54 struct page *pte; in pte_alloc_one() local 56 pte = alloc_pages(GFP_KERNEL | __GFP_REPEAT, PTE_ORDER); in pte_alloc_one() 57 if (!pte) in pte_alloc_one() [all …]
|
/linux-4.4.14/arch/nios2/include/asm/ |
D | pgalloc.h | 16 pte_t *pte) in pmd_populate_kernel() argument 18 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel() 22 pgtable_t pte) in pmd_populate() argument 24 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate() 43 pte_t *pte; in pte_alloc_one_kernel() local 45 pte = (pte_t *) __get_free_pages(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO, in pte_alloc_one_kernel() 48 return pte; in pte_alloc_one_kernel() 54 struct page *pte; in pte_alloc_one() local 56 pte = alloc_pages(GFP_KERNEL | __GFP_REPEAT, PTE_ORDER); in pte_alloc_one() 57 if (pte) { in pte_alloc_one() [all …]
|
D | pgtable.h | 109 static inline int pte_write(pte_t pte) \ in pte_write() argument 110 { return pte_val(pte) & _PAGE_WRITE; } in pte_write() 111 static inline int pte_dirty(pte_t pte) \ in pte_dirty() argument 112 { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() 113 static inline int pte_young(pte_t pte) \ in pte_young() argument 114 { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() 115 static inline int pte_special(pte_t pte) { return 0; } in pte_special() argument 128 static inline int pte_none(pte_t pte) in pte_none() argument 130 return !(pte_val(pte) & ~(_PAGE_GLOBAL|0xf)); in pte_none() 133 static inline int pte_present(pte_t pte) \ in pte_present() argument [all …]
|
/linux-4.4.14/arch/powerpc/mm/ |
D | pgtable.c | 44 static inline int pte_looks_normal(pte_t pte) in pte_looks_normal() argument 46 return (pte_val(pte) & in pte_looks_normal() 51 static struct page *maybe_pte_to_page(pte_t pte) in maybe_pte_to_page() argument 53 unsigned long pfn = pte_pfn(pte); in maybe_pte_to_page() 72 static pte_t set_pte_filter(pte_t pte) in set_pte_filter() argument 74 pte = __pte(pte_val(pte) & ~_PAGE_HPTEFLAGS); in set_pte_filter() 75 if (pte_looks_normal(pte) && !(cpu_has_feature(CPU_FTR_COHERENT_ICACHE) || in set_pte_filter() 77 struct page *pg = maybe_pte_to_page(pte); in set_pte_filter() 79 return pte; in set_pte_filter() 85 return pte; in set_pte_filter() [all …]
|
D | tlb_hash64.c | 44 pte_t *ptep, unsigned long pte, int huge) in hpte_need_flush() argument 70 psize = pte_pagesize_index(mm, addr, pte); /* shutup gcc */ in hpte_need_flush() 73 psize = pte_pagesize_index(mm, addr, pte); in hpte_need_flush() 92 rpte = __real_pte(__pte(pte), ptep); in hpte_need_flush() 126 batch->pte[i] = rpte; in hpte_need_flush() 151 flush_hash_page(batch->vpn[0], batch->pte[0], in __flush_tlb_pending() 214 unsigned long pte; in __flush_hash_table_range() local 218 pte = pte_val(*ptep); in __flush_hash_table_range() 220 trace_hugepage_invalidate(start, pte); in __flush_hash_table_range() 221 if (!(pte & _PAGE_HASHPTE)) in __flush_hash_table_range() [all …]
|
D | pgtable_32.c | 109 pte_t *pte; in pte_alloc_one_kernel() local 112 pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO); in pte_alloc_one_kernel() 114 pte = __va(memblock_alloc(PAGE_SIZE, PAGE_SIZE)); in pte_alloc_one_kernel() 115 if (pte) in pte_alloc_one_kernel() 116 clear_page(pte); in pte_alloc_one_kernel() 118 return pte; in pte_alloc_one_kernel() 372 pte_t *pte; in get_pteptr() local 381 pte = pte_offset_map(pmd, addr & PAGE_MASK); in get_pteptr() 382 if (pte) { in get_pteptr() 384 *ptep = pte; in get_pteptr()
|
D | hugetlbpage-book3e.c | 79 pte_t pte) in book3e_hugetlb_preload() argument 125 mas2 |= (pte_val(pte) >> PTE_WIMGE_SHIFT) & MAS2_WIMGE_MASK; in book3e_hugetlb_preload() 126 mas7_3 = (u64)pte_pfn(pte) << PAGE_SHIFT; in book3e_hugetlb_preload() 127 mas7_3 |= (pte_val(pte) >> PTE_BAP_SHIFT) & MAS3_BAP_MASK; in book3e_hugetlb_preload() 128 if (!pte_dirty(pte)) in book3e_hugetlb_preload()
|
/linux-4.4.14/arch/sh/include/asm/ |
D | pgtable_64.h | 87 #define pte_unmap(pte) do { } while (0) argument 260 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 261 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 262 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITE; } in pte_write() argument 263 static inline int pte_special(pte_t pte){ return pte_val(pte) & _PAGE_SPECIAL; } in pte_special() argument 265 static inline pte_t pte_wrprotect(pte_t pte) { set_pte(&pte, __pte(pte_val(pte) & ~_PAGE_WRITE)); r… in pte_wrprotect() argument 266 static inline pte_t pte_mkclean(pte_t pte) { set_pte(&pte, __pte(pte_val(pte) & ~_PAGE_DIRTY)); ret… in pte_mkclean() argument 267 static inline pte_t pte_mkold(pte_t pte) { set_pte(&pte, __pte(pte_val(pte) & ~_PAGE_ACCESSED)); re… in pte_mkold() argument 268 static inline pte_t pte_mkwrite(pte_t pte) { set_pte(&pte, __pte(pte_val(pte) | _PAGE_WRITE)); retu… in pte_mkwrite() argument 269 static inline pte_t pte_mkdirty(pte_t pte) { set_pte(&pte, __pte(pte_val(pte) | _PAGE_DIRTY)); retu… in pte_mkdirty() argument [all …]
|
D | pgalloc.h | 19 pte_t *pte) in pmd_populate_kernel() argument 21 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel() 25 pgtable_t pte) in pmd_populate() argument 27 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate() 57 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 59 quicklist_free(QUICK_PT, NULL, pte); in pte_free_kernel() 62 static inline void pte_free(struct mm_struct *mm, pgtable_t pte) in pte_free() argument 64 pgtable_page_dtor(pte); in pte_free() 65 quicklist_free_page(QUICK_PT, NULL, pte); in pte_free() 68 #define __pte_free_tlb(tlb,pte,addr) \ argument [all …]
|
D | pgtable_32.h | 299 static inline void set_pte(pte_t *ptep, pte_t pte) in set_pte() argument 301 ptep->pte_high = pte.pte_high; in set_pte() 303 ptep->pte_low = pte.pte_low; in set_pte() 339 #define pte_not_present(pte) (!((pte).pte_low & _PAGE_PRESENT)) argument 340 #define pte_dirty(pte) ((pte).pte_low & _PAGE_DIRTY) argument 341 #define pte_young(pte) ((pte).pte_low & _PAGE_ACCESSED) argument 342 #define pte_special(pte) ((pte).pte_low & _PAGE_SPECIAL) argument 345 #define pte_write(pte) \ argument 346 ((pte).pte_high & (_PAGE_EXT_USER_WRITE | _PAGE_EXT_KERN_WRITE)) 348 #define pte_write(pte) ((pte).pte_low & _PAGE_RW) argument [all …]
|
D | hugetlb.h | 38 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 40 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 54 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 56 return pte_none(pte); in huge_pte_none() 59 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 61 return pte_wrprotect(pte); in huge_pte_wrprotect() 72 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 74 return ptep_set_access_flags(vma, addr, ptep, pte, dirty); in huge_ptep_set_access_flags()
|
D | pgtable.h | 138 unsigned long address, pte_t pte); 140 unsigned long address, pte_t pte); 145 pte_t pte = *ptep; in update_mmu_cache() local 146 __update_cache(vma, address, pte); in update_mmu_cache() 147 __update_tlb(vma, address, pte); in update_mmu_cache()
|
/linux-4.4.14/arch/alpha/include/asm/ |
D | pgtable.h | 208 #define pte_pfn(pte) (pte_val(pte) >> 32) argument 209 #define pte_page(pte) pfn_to_page(pte_pfn(pte)) argument 212 pte_t pte; \ 214 pte_val(pte) = (page_to_pfn(page) << 32) | pgprot_val(pgprot); \ 215 pte; \ 220 { pte_t pte; pte_val(pte) = (PHYS_TWIDDLE(physpfn) << 32) | pgprot_val(pgprot); return pte; } in pfn_pte() local 222 extern inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 223 { pte_val(pte) = (pte_val(pte) & _PAGE_CHG_MASK) | pgprot_val(newprot); return pte; } in pte_modify() 246 extern inline int pte_none(pte_t pte) { return !pte_val(pte); } in pte_none() argument 247 extern inline int pte_present(pte_t pte) { return pte_val(pte) & _PAGE_VALID; } in pte_present() argument [all …]
|
D | pgalloc.h | 14 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) in pmd_populate() argument 16 pmd_set(pmd, (pte_t *)(page_to_pa(pte) + PAGE_OFFSET)); in pmd_populate() 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() 56 pte_t *pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO); in pte_alloc_one_kernel() local 57 return pte; in pte_alloc_one_kernel() 61 pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 63 free_page((unsigned long)pte); in pte_free_kernel() 69 pte_t *pte = pte_alloc_one_kernel(mm, address); in pte_alloc_one() local 72 if (!pte) in pte_alloc_one() [all …]
|
D | mmzone.h | 76 #define pte_pfn(pte) (pte_val(pte) >> 32) argument 80 pte_t pte; \ 84 pte_val(pte) = pfn | pgprot_val(pgprot); \ 86 pte; \
|
D | tlb.h | 6 #define __tlb_remove_tlb_entry(tlb, pte, addr) do { } while (0) argument 12 #define __pte_free_tlb(tlb, pte, address) pte_free((tlb)->mm, pte) argument
|
/linux-4.4.14/arch/arm64/include/asm/ |
D | pgtable.h | 129 #define pte_ERROR(pte) __pte_error(__FILE__, __LINE__, pte_val(pte)) argument 131 #define pte_pfn(pte) ((pte_val(pte) & PHYS_MASK) >> PAGE_SHIFT) argument 135 #define pte_none(pte) (!pte_val(pte)) argument 137 #define pte_page(pte) (pfn_to_page(pte_pfn(pte))) argument 146 #define pte_unmap(pte) do { } while (0) argument 147 #define pte_unmap_nested(pte) do { } while (0) argument 152 #define pte_present(pte) (!!(pte_val(pte) & (PTE_VALID | PTE_PROT_NONE))) argument 153 #define pte_young(pte) (!!(pte_val(pte) & PTE_AF)) argument 154 #define pte_special(pte) (!!(pte_val(pte) & PTE_SPECIAL)) argument 155 #define pte_write(pte) (!!(pte_val(pte) & PTE_WRITE)) argument [all …]
|
D | pgalloc.h | 84 struct page *pte; in pte_alloc_one() local 86 pte = alloc_pages(PGALLOC_GFP, 0); in pte_alloc_one() 87 if (!pte) in pte_alloc_one() 89 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() 90 __free_page(pte); in pte_alloc_one() 93 return pte; in pte_alloc_one() 99 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 101 if (pte) in pte_free_kernel() 102 free_page((unsigned long)pte); in pte_free_kernel() 105 static inline void pte_free(struct mm_struct *mm, pgtable_t pte) in pte_free() argument [all …]
|
D | hugetlb.h | 30 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 32 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 55 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 57 return ptep_set_access_flags(vma, addr, ptep, pte, dirty); in huge_ptep_set_access_flags() 85 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 87 return pte_none(pte); in huge_pte_none() 90 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 92 return pte_wrprotect(pte); in huge_pte_wrprotect()
|
D | kvm_mmu.h | 104 #define kvm_set_pte(ptep, pte) set_pte(ptep, pte) 110 static inline void kvm_clean_pte(pte_t *pte) {} 111 static inline void kvm_clean_pte_entry(pte_t *pte) {} 113 static inline void kvm_set_s2pte_writable(pte_t *pte) 115 pte_val(*pte) |= PTE_S2_RDWR; 123 static inline void kvm_set_s2pte_readonly(pte_t *pte) 125 pte_val(*pte) = (pte_val(*pte) & ~PTE_S2_RDWR) | PTE_S2_RDONLY; 128 static inline bool kvm_s2pte_readonly(pte_t *pte) 130 return (pte_val(*pte) & PTE_S2_RDWR) == PTE_S2_RDONLY; 251 static inline void __kvm_flush_dcache_pte(pte_t pte) [all …]
|
/linux-4.4.14/arch/x86/include/asm/ |
D | pgtable.h | 46 #define set_pte(ptep, pte) native_set_pte(ptep, pte) argument 47 #define set_pte_at(mm, addr, ptep, pte) native_set_pte_at(mm, addr, ptep, pte) argument 50 #define set_pte_atomic(ptep, pte) \ argument 51 native_set_pte_atomic(ptep, pte) 100 static inline int pte_dirty(pte_t pte) in pte_dirty() argument 102 return pte_flags(pte) & _PAGE_DIRTY; in pte_dirty() 105 static inline int pte_young(pte_t pte) in pte_young() argument 107 return pte_flags(pte) & _PAGE_ACCESSED; in pte_young() 120 static inline int pte_write(pte_t pte) in pte_write() argument 122 return pte_flags(pte) & _PAGE_RW; in pte_write() [all …]
|
D | pgalloc.h | 42 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 44 BUG_ON((unsigned long)pte & (PAGE_SIZE-1)); in pte_free_kernel() 45 free_page((unsigned long)pte); in pte_free_kernel() 48 static inline void pte_free(struct mm_struct *mm, struct page *pte) in pte_free() argument 50 pgtable_page_dtor(pte); in pte_free() 51 __free_page(pte); in pte_free() 54 extern void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte); 56 static inline void __pte_free_tlb(struct mmu_gather *tlb, struct page *pte, in __pte_free_tlb() argument 59 ___pte_free_tlb(tlb, pte); in __pte_free_tlb() 63 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument [all …]
|
D | hugetlb.h | 39 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 41 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 56 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 58 return pte_none(pte); in huge_pte_none() 61 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 63 return pte_wrprotect(pte); in huge_pte_wrprotect() 74 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 76 return ptep_set_access_flags(vma, addr, ptep, pte, dirty); in huge_ptep_set_access_flags()
|
D | pgtable_64.h | 53 static inline void native_set_pte(pte_t *ptep, pte_t pte) in native_set_pte() argument 55 *ptep = pte; in native_set_pte() 58 static inline void native_set_pte_atomic(pte_t *ptep, pte_t pte) in native_set_pte_atomic() argument 60 native_set_pte(ptep, pte); in native_set_pte_atomic() 76 return native_make_pte(xchg(&xp->pte, 0)); in native_ptep_get_and_clear() 141 #define pte_unmap(pte) ((void)(pte))/* NOP */ argument 155 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val((pte)) }) argument 156 #define __swp_entry_to_pte(x) ((pte_t) { .pte = (x).val })
|
D | pgtable-2level.h | 14 static inline void native_set_pte(pte_t *ptep , pte_t pte) in native_set_pte() argument 16 *ptep = pte; in native_set_pte() 24 static inline void native_set_pte_atomic(pte_t *ptep, pte_t pte) in native_set_pte_atomic() argument 26 native_set_pte(ptep, pte); in native_set_pte_atomic() 77 #define __pte_to_swp_entry(pte) ((swp_entry_t) { (pte).pte_low }) argument 78 #define __swp_entry_to_pte(x) ((pte_t) { .pte = (x).val })
|
D | paravirt.h | 415 return (pte_t) { .pte = ret }; in __pte() 418 static inline pteval_t pte_val(pte_t pte) in pte_val() argument 424 pte.pte, (u64)pte.pte >> 32); in pte_val() 427 pte.pte); in pte_val() 469 return (pte_t) { .pte = ret }; in ptep_modify_prot_start() 473 pte_t *ptep, pte_t pte) in ptep_modify_prot_commit() argument 477 pv_mmu_ops.ptep_modify_prot_commit(mm, addr, ptep, pte); in ptep_modify_prot_commit() 480 mm, addr, ptep, pte.pte); in ptep_modify_prot_commit() 483 static inline void set_pte(pte_t *ptep, pte_t pte) in set_pte() argument 487 pte.pte, (u64)pte.pte >> 32); in set_pte() [all …]
|
D | pgtable-3level.h | 27 static inline void native_set_pte(pte_t *ptep, pte_t pte) in native_set_pte() argument 29 ptep->pte_high = pte.pte_high; in native_set_pte() 31 ptep->pte_low = pte.pte_low; in native_set_pte() 88 static inline void native_set_pte_atomic(pte_t *ptep, pte_t pte) in native_set_pte_atomic() argument 90 set_64bit((unsigned long long *)(ptep), native_pte_val(pte)); in native_set_pte_atomic() 184 #define __pte_to_swp_entry(pte) ((swp_entry_t){ (pte).pte_high }) argument
|
/linux-4.4.14/arch/mn10300/include/asm/ |
D | pgtable.h | 238 static inline int pte_user(pte_t pte) { return pte_val(pte) & __PAGE_PROT_USER; } in pte_user() argument 239 static inline int pte_read(pte_t pte) { return pte_val(pte) & __PAGE_PROT_USER; } in pte_read() argument 240 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 241 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 242 static inline int pte_write(pte_t pte) { return pte_val(pte) & __PAGE_PROT_WRITE; } in pte_write() argument 243 static inline int pte_special(pte_t pte){ return 0; } in pte_special() argument 245 static inline pte_t pte_rdprotect(pte_t pte) in pte_rdprotect() argument 247 pte_val(pte) &= ~(__PAGE_PROT_USER|__PAGE_PROT_UWAUX); return pte; in pte_rdprotect() 249 static inline pte_t pte_exprotect(pte_t pte) in pte_exprotect() argument 251 pte_val(pte) |= _PAGE_NX; return pte; in pte_exprotect() [all …]
|
D | pgalloc.h | 22 #define pmd_populate_kernel(mm, pmd, pte) \ argument 23 set_pmd(pmd, __pmd(__pa(pte) | _PAGE_TABLE)) 26 void pmd_populate(struct mm_struct *mm, pmd_t *pmd, struct page *pte) in pmd_populate() argument 28 set_pmd(pmd, __pmd((page_to_pfn(pte) << PAGE_SHIFT) | _PAGE_TABLE)); in pmd_populate() 42 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 44 free_page((unsigned long) pte); in pte_free_kernel() 47 static inline void pte_free(struct mm_struct *mm, struct page *pte) in pte_free() argument 49 pgtable_page_dtor(pte); in pte_free() 50 __free_page(pte); in pte_free() 54 #define __pte_free_tlb(tlb, pte, addr) tlb_remove_page((tlb), (pte)) argument
|
/linux-4.4.14/arch/metag/include/asm/ |
D | pgalloc.h | 7 #define pmd_populate_kernel(mm, pmd, pte) \ argument 8 set_pmd(pmd, __pmd(_PAGE_TABLE | __pa(pte))) 10 #define pmd_populate(mm, pmd, pte) \ argument 11 set_pmd(pmd, __pmd(_PAGE_TABLE | page_to_phys(pte))) 45 pte_t *pte = (pte_t *)__get_free_page(GFP_KERNEL | __GFP_REPEAT | in pte_alloc_one_kernel() local 47 return pte; in pte_alloc_one_kernel() 53 struct page *pte; in pte_alloc_one() local 54 pte = alloc_pages(GFP_KERNEL | __GFP_REPEAT | __GFP_ZERO, 0); in pte_alloc_one() 55 if (!pte) in pte_alloc_one() 57 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() [all …]
|
D | pgtable.h | 104 #define pte_pfn(pte) (pte_val(pte) >> PAGE_SHIFT) argument 125 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITE; } in pte_write() argument 126 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 127 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 128 static inline int pte_special(pte_t pte) { return 0; } in pte_special() argument 130 static inline pte_t pte_wrprotect(pte_t pte) { pte_val(pte) &= (~_PAGE_WRITE); return pte; } in pte_wrprotect() argument 131 static inline pte_t pte_mkclean(pte_t pte) { pte_val(pte) &= ~_PAGE_DIRTY; return pte; } in pte_mkclean() argument 132 static inline pte_t pte_mkold(pte_t pte) { pte_val(pte) &= ~_PAGE_ACCESSED; return pte; } in pte_mkold() argument 133 static inline pte_t pte_mkwrite(pte_t pte) { pte_val(pte) |= _PAGE_WRITE; return pte; } in pte_mkwrite() argument 134 static inline pte_t pte_mkdirty(pte_t pte) { pte_val(pte) |= _PAGE_DIRTY; return pte; } in pte_mkdirty() argument [all …]
|
D | hugetlb.h | 26 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 28 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 42 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 44 return pte_none(pte); in huge_pte_none() 47 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 49 return pte_wrprotect(pte); in huge_pte_wrprotect() 60 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 62 return ptep_set_access_flags(vma, addr, ptep, pte, dirty); in huge_ptep_set_access_flags()
|
/linux-4.4.14/arch/sparc/include/asm/ |
D | pgtable_64.h | 249 pte_t pte = pfn_pte(page_nr, pgprot); in pfn_pmd() local 251 return __pmd(pte_val(pte)); in pfn_pmd() 257 static inline unsigned long pte_pfn(pte_t pte) in pte_pfn() argument 270 : "r" (pte_val(pte)), in pte_pfn() 278 static inline pte_t pte_modify(pte_t pte, pgprot_t prot) in pte_modify() argument 333 return __pte((pte_val(pte) & mask) | (pgprot_val(prot) & ~mask)); in pte_modify() 339 pte_t pte = __pte(pmd_val(pmd)); in pmd_modify() local 341 pte = pte_modify(pte, newprot); in pmd_modify() 343 return __pmd(pte_val(pte)); in pmd_modify() 396 static inline pte_t pte_mkhuge(pte_t pte) in pte_mkhuge() argument [all …]
|
D | pgtable_32.h | 144 static inline int pte_present(pte_t pte) in pte_present() argument 146 return ((pte_val(pte) & SRMMU_ET_MASK) == SRMMU_ET_PTE); in pte_present() 149 static inline int pte_none(pte_t pte) in pte_none() argument 151 return !pte_val(pte); in pte_none() 210 static inline int pte_write(pte_t pte) in pte_write() argument 212 return pte_val(pte) & SRMMU_WRITE; in pte_write() 215 static inline int pte_dirty(pte_t pte) in pte_dirty() argument 217 return pte_val(pte) & SRMMU_DIRTY; in pte_dirty() 220 static inline int pte_young(pte_t pte) in pte_young() argument 222 return pte_val(pte) & SRMMU_REF; in pte_young() [all …]
|
D | hugetlb.h | 9 pte_t *ptep, pte_t pte); 47 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 49 return pte_none(pte); in huge_pte_none() 52 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 54 return pte_wrprotect(pte); in huge_pte_wrprotect() 66 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 68 int changed = !pte_same(*ptep, pte); in huge_ptep_set_access_flags() 70 set_huge_pte_at(vma->vm_mm, addr, ptep, pte); in huge_ptep_set_access_flags()
|
D | pgalloc_32.h | 69 static inline void free_pte_fast(pte_t *pte) in free_pte_fast() argument 71 srmmu_free_nocache(pte, PTE_SIZE); in free_pte_fast() 74 #define pte_free_kernel(mm, pte) free_pte_fast(pte) argument 76 void pte_free(struct mm_struct * mm, pgtable_t pte); 77 #define __pte_free_tlb(tlb, pte, addr) pte_free((tlb)->mm, pte) argument
|
/linux-4.4.14/arch/s390/mm/ |
D | hugetlbpage.c | 11 static inline pmd_t __pte_to_pmd(pte_t pte) in __pte_to_pmd() argument 35 if (pte_present(pte)) { in __pte_to_pmd() 36 pmd_val(pmd) = pte_val(pte) & PAGE_MASK; in __pte_to_pmd() 37 pmd_val(pmd) |= (pte_val(pte) & _PAGE_READ) >> 4; in __pte_to_pmd() 38 pmd_val(pmd) |= (pte_val(pte) & _PAGE_WRITE) >> 4; in __pte_to_pmd() 39 pmd_val(pmd) |= (pte_val(pte) & _PAGE_INVALID) >> 5; in __pte_to_pmd() 40 pmd_val(pmd) |= (pte_val(pte) & _PAGE_PROTECT); in __pte_to_pmd() 41 pmd_val(pmd) |= (pte_val(pte) & _PAGE_DIRTY) << 10; in __pte_to_pmd() 42 pmd_val(pmd) |= (pte_val(pte) & _PAGE_YOUNG) << 10; in __pte_to_pmd() 43 pmd_val(pmd) |= (pte_val(pte) & _PAGE_SOFT_DIRTY) << 13; in __pte_to_pmd() [all …]
|
D | pageattr.c | 68 pte_t *ptep, pte; in change_page_attr() local 75 pte = *ptep; in change_page_attr() 76 pte = set(pte); in change_page_attr() 78 *ptep = pte; in change_page_attr() 108 static void ipte_range(pte_t *pte, unsigned long address, int nr) in ipte_range() argument 113 __ptep_ipte_range(address, nr - 1, pte); in ipte_range() 117 __ptep_ipte(address, pte); in ipte_range() 119 pte++; in ipte_range() 130 pte_t *pte; in __kernel_map_pages() local 137 pte = pte_offset_kernel(pmd, address); in __kernel_map_pages() [all …]
|
D | gup.c | 24 pte_t *ptep, pte; in gup_pte_range() local 31 pte = *ptep; in gup_pte_range() 34 if (pte_protnone(pte)) in gup_pte_range() 36 if ((pte_val(pte) & mask) != 0) in gup_pte_range() 38 VM_BUG_ON(!pfn_valid(pte_pfn(pte))); in gup_pte_range() 39 page = pte_page(pte); in gup_pte_range() 42 if (unlikely(pte_val(pte) != pte_val(*ptep))) { in gup_pte_range()
|
/linux-4.4.14/arch/tile/mm/ |
D | homecache.c | 179 pte_t pte; in homecache_finv_map_page() local 191 pte = pfn_pte(page_to_pfn(page), PAGE_KERNEL); in homecache_finv_map_page() 192 __set_pte(ptep, pte_set_home(pte, home)); in homecache_finv_map_page() 244 static int pte_to_home(pte_t pte) in pte_to_home() argument 246 if (hv_pte_get_nc(pte)) in pte_to_home() 248 switch (hv_pte_get_mode(pte)) { in pte_to_home() 250 return get_remote_cache_cpu(pte); in pte_to_home() 258 panic("Bad PTE %#llx\n", pte.val); in pte_to_home() 262 pte_t pte_set_home(pte_t pte, int home) in pte_set_home() argument 266 if (hv_pte_get_mode(pte) == HV_PTE_MODE_MMIO) in pte_set_home() [all …]
|
D | pgtable.c | 278 void __pgtable_free_tlb(struct mmu_gather *tlb, struct page *pte, in __pgtable_free_tlb() argument 283 pgtable_page_dtor(pte); in __pgtable_free_tlb() 284 tlb_remove_page(tlb, pte); in __pgtable_free_tlb() 287 tlb_remove_page(tlb, pte + i); in __pgtable_free_tlb() 288 dec_zone_page_state(pte + i, NR_PAGETABLE); in __pgtable_free_tlb() 395 int va_to_cpa_and_pte(void *va, unsigned long long *cpa, pte_t *pte) in va_to_cpa_and_pte() argument 403 *pte = pte_set_home(null_pte, page_home(page)); in va_to_cpa_and_pte() 409 void __set_pte(pte_t *ptep, pte_t pte) in __set_pte() argument 412 *ptep = pte; in __set_pte() 417 if (pte_present(pte)) { in __set_pte() [all …]
|
D | highmem.c | 159 pte_t pte = mk_pte(amp->page, page_to_kpgprot(amp->page)); in kmap_atomic_fix_one_kpte() local 160 set_pte(ptep, pte); in kmap_atomic_fix_one_kpte() 202 pte_t *pte; in kmap_atomic_prot() local 216 pte = kmap_get_pte(vaddr); in kmap_atomic_prot() 217 BUG_ON(!pte_none(*pte)); in kmap_atomic_prot() 220 kmap_atomic_register(page, type, vaddr, pte, mk_pte(page, prot)); in kmap_atomic_prot() 239 pte_t *pte = kmap_get_pte(vaddr); in __kunmap_atomic() local 240 pte_t pteval = *pte; in __kunmap_atomic() 253 kpte_clear_flush(pte, vaddr); in __kunmap_atomic()
|
D | init.c | 147 pte_t *pte = get_prealloc_pte(pte_pfn(*(pte_t *)pmd)); in shatter_pmd() local 148 assign_pte(pmd, pte); in shatter_pmd() 410 pte_t *pte; in kernel_physical_mapping_init() local 462 pte = get_prealloc_pte(pfn); in kernel_physical_mapping_init() 468 pte[pte_ofs] = pfn_pte(pfn, prot); in kernel_physical_mapping_init() 476 pte[pte_ofs] = pfn_pte(pfn, prot); in kernel_physical_mapping_init() 478 assign_pte(pmd, pte); in kernel_physical_mapping_init() 532 pte = NULL; in kernel_physical_mapping_init() 537 if (pte) in kernel_physical_mapping_init() 538 assign_pte(pmd++, pte); in kernel_physical_mapping_init() [all …]
|
D | hugetlbpage.c | 96 pte_t pte = *super_ptep; in get_pte() local 97 if (pte_present(pte) && pte_super(pte)) in get_pte() 110 pte_t *pte; in huge_pte_offset() local 143 pte = get_pte((pte_t *)pmd_page_vaddr(*pmd), pte_index(addr), 2); in huge_pte_offset() 144 if (!pte_present(*pte)) in huge_pte_offset() 146 if (pte_super(*pte)) in huge_pte_offset() 147 return pte; in huge_pte_offset()
|
D | fault.c | 160 static void wait_for_migration(pte_t *pte) in wait_for_migration() argument 162 if (pte_migrating(*pte)) { in wait_for_migration() 170 while (pte_migrating(*pte)) { in wait_for_migration() 174 pte->val, pte_pfn(*pte)); in wait_for_migration() 217 pte_t *pte; in handle_migrating_pte() local 230 pte = pmd_huge_page(*pmd) ? ((pte_t *)pmd) : in handle_migrating_pte() 232 pteval = *pte; in handle_migrating_pte() 236 wait_for_migration(pte); in handle_migrating_pte() 520 pte_t *pte = lookup_address(address); in handle_page_fault() local 522 if (pte && pte_present(*pte) && !pte_exec_kernel(*pte)) in handle_page_fault()
|
/linux-4.4.14/arch/frv/include/asm/ |
D | pgtable.h | 62 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) argument 159 printk("%s:%d: bad pte %08lx.\n", __FILE__, __LINE__, (e).pte) 238 #define pud_populate(mm, pmd, pte) do { } while (0) argument 267 #define pte_same(a, b) ((a).pte == (b).pte) 268 #define pte_page(x) (mem_map + ((unsigned long)(((x).pte >> PAGE_SHIFT)))) 269 #define pte_none(x) (!(x).pte) 270 #define pte_pfn(x) ((unsigned long)(((x).pte >> PAGE_SHIFT))) 375 static inline int pte_dirty(pte_t pte) { return (pte).pte & _PAGE_DIRTY; } in pte_dirty() argument 376 static inline int pte_young(pte_t pte) { return (pte).pte & _PAGE_ACCESSED; } in pte_young() argument 377 static inline int pte_write(pte_t pte) { return !((pte).pte & _PAGE_WP); } in pte_write() argument [all …]
|
D | pgalloc.h | 23 #define pmd_populate_kernel(mm, pmd, pte) __set_pmd(pmd, __pa(pte) | _PAGE_TABLE) argument 41 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 43 free_page((unsigned long)pte); in pte_free_kernel() 46 static inline void pte_free(struct mm_struct *mm, pgtable_t pte) in pte_free() argument 48 pgtable_page_dtor(pte); in pte_free() 49 __free_page(pte); in pte_free() 52 #define __pte_free_tlb(tlb,pte,address) \ argument 54 pgtable_page_dtor(pte); \ 55 tlb_remove_page((tlb),(pte)); \
|
/linux-4.4.14/arch/xtensa/include/asm/ |
D | pgtable.h | 244 # define pte_none(pte) (pte_val(pte) == (_PAGE_CA_INVALID | _PAGE_USER)) argument 246 # define pte_present(pte) ((pte_val(pte) & _PAGE_CA_MASK) != _PAGE_CA_INVALID) argument 248 # define pte_present(pte) \ argument 249 (((pte_val(pte) & _PAGE_CA_MASK) != _PAGE_CA_INVALID) \ 250 || ((pte_val(pte) & _PAGE_ATTRIB_MASK) == _PAGE_NONE)) 260 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITABLE; } in pte_write() argument 261 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 262 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 263 static inline int pte_special(pte_t pte) { return 0; } in pte_special() argument 265 static inline pte_t pte_wrprotect(pte_t pte) in pte_wrprotect() argument [all …]
|
D | pgalloc.h | 58 pte_t *pte; in pte_alloc_one() local 61 pte = pte_alloc_one_kernel(mm, addr); in pte_alloc_one() 62 if (!pte) in pte_alloc_one() 64 page = virt_to_page(pte); in pte_alloc_one() 72 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 74 free_page((unsigned long)pte); in pte_free_kernel() 77 static inline void pte_free(struct mm_struct *mm, pgtable_t pte) in pte_free() argument 79 pgtable_page_dtor(pte); in pte_free() 80 __free_page(pte); in pte_free()
|
/linux-4.4.14/arch/m32r/include/asm/ |
D | pgalloc.h | 8 #define pmd_populate_kernel(mm, pmd, pte) \ argument 9 set_pmd(pmd, __pmd(_PAGE_TABLE + __pa(pte))) 12 pgtable_t pte) in pmd_populate() argument 14 set_pmd(pmd, __pmd(_PAGE_TABLE + page_to_phys(pte))); in pmd_populate() 36 pte_t *pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_ZERO); in pte_alloc_one_kernel() local 38 return pte; in pte_alloc_one_kernel() 44 struct page *pte = alloc_page(GFP_KERNEL|__GFP_ZERO); in pte_alloc_one() local 46 if (!pte) in pte_alloc_one() 48 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() 49 __free_page(pte); in pte_alloc_one() [all …]
|
D | pgtable.h | 191 static inline int pte_dirty(pte_t pte) in pte_dirty() argument 193 return pte_val(pte) & _PAGE_DIRTY; in pte_dirty() 196 static inline int pte_young(pte_t pte) in pte_young() argument 198 return pte_val(pte) & _PAGE_ACCESSED; in pte_young() 201 static inline int pte_write(pte_t pte) in pte_write() argument 203 return pte_val(pte) & _PAGE_WRITE; in pte_write() 206 static inline int pte_special(pte_t pte) in pte_special() argument 211 static inline pte_t pte_mkclean(pte_t pte) in pte_mkclean() argument 213 pte_val(pte) &= ~_PAGE_DIRTY; in pte_mkclean() 214 return pte; in pte_mkclean() [all …]
|
/linux-4.4.14/arch/avr32/include/asm/ |
D | pgtable.h | 192 static inline int pte_write(pte_t pte) in pte_write() argument 194 return pte_val(pte) & _PAGE_RW; in pte_write() 196 static inline int pte_dirty(pte_t pte) in pte_dirty() argument 198 return pte_val(pte) & _PAGE_DIRTY; in pte_dirty() 200 static inline int pte_young(pte_t pte) in pte_young() argument 202 return pte_val(pte) & _PAGE_ACCESSED; in pte_young() 204 static inline int pte_special(pte_t pte) in pte_special() argument 210 static inline pte_t pte_wrprotect(pte_t pte) in pte_wrprotect() argument 212 set_pte(&pte, __pte(pte_val(pte) & ~_PAGE_RW)); in pte_wrprotect() 213 return pte; in pte_wrprotect() [all …]
|
D | pgalloc.h | 20 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument 22 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel() 26 pgtable_t pte) in pmd_populate() argument 28 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate() 79 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 81 quicklist_free(QUICK_PT, NULL, pte); in pte_free_kernel() 84 static inline void pte_free(struct mm_struct *mm, pgtable_t pte) in pte_free() argument 86 pgtable_page_dtor(pte); in pte_free() 87 quicklist_free_page(QUICK_PT, NULL, pte); in pte_free() 90 #define __pte_free_tlb(tlb,pte,addr) \ argument [all …]
|
/linux-4.4.14/arch/unicore32/include/asm/ |
D | pgalloc.h | 39 pte_t *pte; in pte_alloc_one_kernel() local 41 pte = (pte_t *)__get_free_page(PGALLOC_GFP); in pte_alloc_one_kernel() 42 if (pte) in pte_alloc_one_kernel() 43 clean_dcache_area(pte, PTRS_PER_PTE * sizeof(pte_t)); in pte_alloc_one_kernel() 45 return pte; in pte_alloc_one_kernel() 51 struct page *pte; in pte_alloc_one() local 53 pte = alloc_pages(PGALLOC_GFP, 0); in pte_alloc_one() 54 if (!pte) in pte_alloc_one() 56 if (!PageHighMem(pte)) { in pte_alloc_one() 57 void *page = page_address(pte); in pte_alloc_one() [all …]
|
D | pgtable.h | 52 #define pte_ERROR(pte) __pte_error(__FILE__, __LINE__, pte_val(pte)) argument 152 #define pte_pfn(pte) (pte_val(pte) >> PAGE_SHIFT) argument 156 #define pte_none(pte) (!pte_val(pte)) argument 158 #define pte_page(pte) (pfn_to_page(pte_pfn(pte))) argument 164 #define pte_unmap(pte) do { } while (0) argument 166 #define set_pte(ptep, pte) cpu_set_pte(ptep, pte) argument 177 #define pte_present(pte) (pte_val(pte) & PTE_PRESENT) argument 178 #define pte_write(pte) (pte_val(pte) & PTE_WRITE) argument 179 #define pte_dirty(pte) (pte_val(pte) & PTE_DIRTY) argument 180 #define pte_young(pte) (pte_val(pte) & PTE_YOUNG) argument [all …]
|
D | tlb.h | 20 #define __pte_free_tlb(tlb, pte, addr) \ argument 22 pgtable_page_dtor(pte); \ 23 tlb_remove_page((tlb), (pte)); \
|
/linux-4.4.14/arch/s390/include/asm/ |
D | hugetlb.h | 20 pte_t *ptep, pte_t pte); 55 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 57 int changed = !pte_same(huge_ptep_get(ptep), pte); in huge_ptep_set_access_flags() 60 set_huge_pte_at(vma->vm_mm, addr, ptep, pte); in huge_ptep_set_access_flags() 68 pte_t pte = huge_ptep_get_and_clear(mm, addr, ptep); in huge_ptep_set_wrprotect() local 69 set_huge_pte_at(mm, addr, ptep, pte_wrprotect(pte)); in huge_ptep_set_wrprotect() 77 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 79 return pte_none(pte); in huge_pte_none() 82 static inline int huge_pte_write(pte_t pte) in huge_pte_write() argument 84 return pte_write(pte); in huge_pte_write() [all …]
|
D | pgtable.h | 561 static inline int pte_present(pte_t pte) in pte_present() argument 564 return (pte_val(pte) & _PAGE_PRESENT) != 0; in pte_present() 567 static inline int pte_none(pte_t pte) in pte_none() argument 570 return pte_val(pte) == _PAGE_INVALID; in pte_none() 573 static inline int pte_swap(pte_t pte) in pte_swap() argument 576 return (pte_val(pte) & (_PAGE_PROTECT | _PAGE_PRESENT)) in pte_swap() 580 static inline int pte_special(pte_t pte) in pte_special() argument 582 return (pte_val(pte) & _PAGE_SPECIAL); in pte_special() 592 static inline int pte_protnone(pte_t pte) in pte_protnone() argument 594 return pte_present(pte) && !(pte_val(pte) & _PAGE_READ); in pte_protnone() [all …]
|
D | pgalloc.h | 125 pmd_t *pmd, pgtable_t pte) in pmd_populate() argument 127 pmd_val(*pmd) = _SEGMENT_ENTRY + __pa(pte); in pmd_populate() 130 #define pmd_populate_kernel(mm, pmd, pte) pmd_populate(mm, pmd, pte) argument 141 #define pte_free_kernel(mm, pte) page_table_free(mm, (unsigned long *) pte) argument 142 #define pte_free(mm, pte) page_table_free(mm, (unsigned long *) pte) argument
|
/linux-4.4.14/include/trace/events/ |
D | thp.h | 12 TP_PROTO(unsigned long addr, unsigned long pte), 13 TP_ARGS(addr, pte), 16 __field(unsigned long, pte) 21 __entry->pte = pte; 25 __entry->addr, __entry->pte) 48 TP_PROTO(unsigned long addr, unsigned long pte, unsigned long clr, unsigned long set), 49 TP_ARGS(addr, pte, clr, set), 52 __field(unsigned long, pte) 59 __entry->pte = pte; 65 …r 0x%lx and pte = 0x%lx clr = 0x%lx, set = 0x%lx", __entry->addr, __entry->pte, __entry->clr, __en… [all …]
|
/linux-4.4.14/arch/x86/mm/ |
D | pageattr-test.c | 38 static int pte_testbit(pte_t pte) in pte_testbit() argument 40 return pte_flags(pte) & _PAGE_SOFTW1; in pte_testbit() 59 pte_t *pte; in print_split() local 61 pte = lookup_address(addr, &level); in print_split() 62 if (!pte) { in print_split() 72 if ((pte_val(*pte) & _PAGE_PRESENT) && !(pte_val(*pte) & _PAGE_PSE)) { in print_split() 75 addr, level, (u64)pte_val(*pte)); in print_split() 84 if (!(pte_val(*pte) & _PAGE_NX)) { in print_split() 117 pte_t *pte, pte0; in pageattr_test() local 145 pte = NULL; in pageattr_test() [all …]
|
D | kmmio.c | 76 pte_t *pte = lookup_address(addr, &l); in kmmio_page_list() local 78 if (!pte) in kmmio_page_list() 113 pte_t *pte = lookup_address(addr, &l); in get_kmmio_fault_page() local 115 if (!pte) in get_kmmio_fault_page() 137 static void clear_pte_presence(pte_t *pte, bool clear, pteval_t *old) in clear_pte_presence() argument 139 pteval_t v = pte_val(*pte); in clear_pte_presence() 145 set_pte_atomic(pte, __pte(v)); in clear_pte_presence() 151 pte_t *pte = lookup_address(f->addr, &level); in clear_page_presence() local 153 if (!pte) { in clear_page_presence() 160 clear_pmd_presence((pmd_t *)pte, clear, &f->old_presence); in clear_page_presence() [all …]
|
D | init_32.c | 156 static pte_t *__init page_table_kmap_check(pte_t *pte, pmd_t *pmd, in page_table_kmap_check() argument 179 set_pte(newpte + i, pte[i]); in page_table_kmap_check() 187 paravirt_release_pte(__pa(pte) >> PAGE_SHIFT); in page_table_kmap_check() 188 pte = newpte; in page_table_kmap_check() 192 && lastpte && lastpte + PTRS_PER_PTE != pte); in page_table_kmap_check() 194 return pte; in page_table_kmap_check() 213 pte_t *pte = NULL; in page_table_range_init() local 230 pte = page_table_kmap_check(one_page_table_init(pmd), in page_table_range_init() 231 pmd, vaddr, pte, &adr); in page_table_range_init() 264 pte_t *pte; in kernel_physical_mapping_init() local [all …]
|
D | init_64.c | 260 pte_t *pte = (pte_t *) spp_getpage(); in fill_pte() local 261 pmd_populate_kernel(&init_mm, pmd, pte); in fill_pte() 262 if (pte != pte_offset_kernel(pmd, 0)) in fill_pte() 272 pte_t *pte; in set_pte_vaddr_pud() local 276 pte = fill_pte(pmd, vaddr); in set_pte_vaddr_pud() 278 set_pte(pte, new_pte); in set_pte_vaddr_pud() 409 pte_t *pte = pte_page + pte_index(addr); in phys_pte_init() local 411 for (i = pte_index(addr); i < PTRS_PER_PTE; i++, addr = next, pte++) { in phys_pte_init() 417 set_pte(pte, __pte(0)); in phys_pte_init() 427 if (pte_val(*pte)) { in phys_pte_init() [all …]
|
D | fault.c | 330 pte_t *pte; in dump_pagetable() local 349 pte = pte_offset_kernel(pmd, address); in dump_pagetable() 350 printk("*pte = %0*Lx ", sizeof(*pte) * 2, (u64)pte_val(*pte)); in dump_pagetable() 372 pte_t *pte, *pte_ref; in vmalloc_fault() local 428 pte = pte_offset_kernel(pmd, address); in vmalloc_fault() 435 if (!pte_present(*pte) || pte_pfn(*pte) != pte_pfn(*pte_ref)) in vmalloc_fault() 473 pte_t *pte; in dump_pagetable() local 499 pte = pte_offset_kernel(pmd, address); in dump_pagetable() 500 if (bad_address(pte)) in dump_pagetable() 503 printk("PTE %lx", pte_val(*pte)); in dump_pagetable() [all …]
|
D | pgtable.c | 26 struct page *pte; in pte_alloc_one() local 28 pte = alloc_pages(__userpte_alloc_gfp, 0); in pte_alloc_one() 29 if (!pte) in pte_alloc_one() 31 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() 32 __free_page(pte); in pte_alloc_one() 35 return pte; in pte_alloc_one() 55 void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) in ___pte_free_tlb() argument 57 pgtable_page_dtor(pte); in ___pte_free_tlb() 58 paravirt_release_pte(page_to_pfn(pte)); in ___pte_free_tlb() 59 tlb_remove_page(tlb, pte); in ___pte_free_tlb() [all …]
|
D | gup.c | 52 pte_t pte; in gup_get_pte() 55 pte.pte_low = ptep->pte_low; in gup_get_pte() 57 pte.pte_high = ptep->pte_high; in gup_get_pte() 59 if (unlikely(pte.pte_low != ptep->pte_low)) in gup_get_pte() 62 return pte; in gup_get_pte() 83 pte_t pte = gup_get_pte(ptep); in gup_pte_range() local 87 if (pte_protnone(pte)) { in gup_pte_range() 92 if ((pte_flags(pte) & (mask | _PAGE_SPECIAL)) != mask) { in gup_pte_range() 96 VM_BUG_ON(!pfn_valid(pte_pfn(pte))); in gup_pte_range() 97 page = pte_page(pte); in gup_pte_range()
|
D | pgtable_32.c | 32 pte_t *pte; in set_pte_vaddr() local 49 pte = pte_offset_kernel(pmd, vaddr); in set_pte_vaddr() 51 set_pte_at(&init_mm, vaddr, pte, pteval); in set_pte_vaddr() 53 pte_clear(&init_mm, vaddr, pte); in set_pte_vaddr()
|
D | pageattr.c | 197 pte_t *pte = lookup_address(addr, &level); in cpa_flush_range() local 202 if (pte && (pte_val(*pte) & _PAGE_PRESENT)) in cpa_flush_range() 228 pte_t *pte; in cpa_flush_array() local 235 pte = lookup_address(addr, &level); in cpa_flush_array() 240 if (pte && (pte_val(*pte) & _PAGE_PRESENT)) in cpa_flush_array() 420 pte_t *pte; in slow_virt_to_phys() local 422 pte = lookup_address(virt_addr, &level); in slow_virt_to_phys() 423 BUG_ON(!pte); in slow_virt_to_phys() 432 phys_addr = (phys_addr_t)pud_pfn(*(pud_t *)pte) << PAGE_SHIFT; in slow_virt_to_phys() 436 phys_addr = (phys_addr_t)pmd_pfn(*(pmd_t *)pte) << PAGE_SHIFT; in slow_virt_to_phys() [all …]
|
/linux-4.4.14/arch/parisc/include/asm/ |
D | pgtable.h | 357 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 358 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 359 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITE; } in pte_write() argument 360 static inline int pte_special(pte_t pte) { return 0; } in pte_special() argument 362 static inline pte_t pte_mkclean(pte_t pte) { pte_val(pte) &= ~_PAGE_DIRTY; return pte; } in pte_mkclean() argument 363 static inline pte_t pte_mkold(pte_t pte) { pte_val(pte) &= ~_PAGE_ACCESSED; return pte; } in pte_mkold() argument 364 static inline pte_t pte_wrprotect(pte_t pte) { pte_val(pte) &= ~_PAGE_WRITE; return pte; } in pte_wrprotect() argument 365 static inline pte_t pte_mkdirty(pte_t pte) { pte_val(pte) |= _PAGE_DIRTY; return pte; } in pte_mkdirty() argument 366 static inline pte_t pte_mkyoung(pte_t pte) { pte_val(pte) |= _PAGE_ACCESSED; return pte; } in pte_mkyoung() argument 367 static inline pte_t pte_mkwrite(pte_t pte) { pte_val(pte) |= _PAGE_WRITE; return pte; } in pte_mkwrite() argument [all …]
|
D | pgalloc.h | 99 #define pgd_populate(mm, pmd, pte) BUG() argument 104 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument 113 + (__u32)(__pa((unsigned long)pte) >> PxD_VALUE_SHIFT)); in pmd_populate_kernel() 117 + (__u32)(__pa((unsigned long)pte) >> PxD_VALUE_SHIFT)); in pmd_populate_kernel() 140 pte_t *pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO); in pte_alloc_one_kernel() local 141 return pte; in pte_alloc_one_kernel() 144 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 146 free_page((unsigned long)pte); in pte_free_kernel() 149 static inline void pte_free(struct mm_struct *mm, struct page *pte) in pte_free() argument 151 pgtable_page_dtor(pte); in pte_free() [all …]
|
D | hugetlb.h | 9 pte_t *ptep, pte_t pte); 47 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 49 return pte_none(pte); in huge_pte_none() 52 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 54 return pte_wrprotect(pte); in huge_pte_wrprotect() 62 pte_t pte, int dirty);
|
/linux-4.4.14/arch/m68k/mm/ |
D | mcfmmu.c | 67 pte_t pte = pfn_pte(virt_to_pfn(address), PAGE_INIT); in paging_init() local 69 pte_val(pte) = 0; in paging_init() 71 set_pte(pg_table, pte); in paging_init() 90 pte_t *pte; in cf_tlb_miss() local 116 pte = (KMAPAREA(mmuar)) ? pte_offset_kernel(pmd, mmuar) in cf_tlb_miss() 118 if (pte_none(*pte) || !pte_present(*pte)) { in cf_tlb_miss() 124 if (!pte_write(*pte)) { in cf_tlb_miss() 128 set_pte(pte, pte_mkdirty(*pte)); in cf_tlb_miss() 131 set_pte(pte, pte_mkyoung(*pte)); in cf_tlb_miss() 133 if (!pte_dirty(*pte) && !KMAPAREA(mmuar)) in cf_tlb_miss() [all …]
|
/linux-4.4.14/arch/score/mm/ |
D | tlb-miss.S | 35 .macro load_pte, pte, ptr 38 mfcr \pte, cr6 39 srli \pte, \pte, 22 40 slli \pte, \pte, 2 41 add \ptr, \ptr, \pte 43 mfcr \pte, cr6 44 srli \pte, \pte, 10 45 andi \pte, 0xffc 46 add \ptr, \ptr, \pte 47 lw \pte, [\ptr, 0] [all …]
|
/linux-4.4.14/arch/ia64/include/asm/ |
D | pgtable.h | 264 #define pte_none(pte) (!pte_val(pte)) argument 265 #define pte_present(pte) (pte_val(pte) & (_PAGE_P | _PAGE_PROTNONE)) argument 266 #define pte_clear(mm,addr,pte) (pte_val(*(pte)) = 0UL) argument 268 #define pte_page(pte) virt_to_page(((pte_val(pte) & _PFN_MASK) + PAGE_OFFSET)) argument 296 #define pte_write(pte) ((unsigned) (((pte_val(pte) & _PAGE_AR_MASK) >> _PAGE_AR_SHIFT) - 2) <= 4) argument 297 #define pte_exec(pte) ((pte_val(pte) & _PAGE_AR_RX) != 0) argument 298 #define pte_dirty(pte) ((pte_val(pte) & _PAGE_D) != 0) argument 299 #define pte_young(pte) ((pte_val(pte) & _PAGE_A) != 0) argument 300 #define pte_special(pte) 0 argument 306 #define pte_wrprotect(pte) (__pte(pte_val(pte) & ~_PAGE_AR_RW)) argument [all …]
|
D | pgalloc.h | 73 pmd_populate(struct mm_struct *mm, pmd_t * pmd_entry, pgtable_t pte) in pmd_populate() argument 75 pmd_val(*pmd_entry) = page_to_phys(pte); in pmd_populate() 80 pmd_populate_kernel(struct mm_struct *mm, pmd_t * pmd_entry, pte_t * pte) in pmd_populate_kernel() argument 82 pmd_val(*pmd_entry) = __pa(pte); in pmd_populate_kernel() 107 static inline void pte_free(struct mm_struct *mm, pgtable_t pte) in pte_free() argument 109 pgtable_page_dtor(pte); in pte_free() 110 quicklist_free_page(0, NULL, pte); in pte_free() 113 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 115 quicklist_free(0, NULL, pte); in pte_free_kernel() 123 #define __pte_free_tlb(tlb, pte, address) pte_free((tlb)->mm, pte) argument
|
D | hugetlb.h | 24 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 26 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 40 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 42 return pte_none(pte); in huge_pte_none() 45 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 47 return pte_wrprotect(pte); in huge_pte_wrprotect() 58 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 60 return ptep_set_access_flags(vma, addr, ptep, pte, dirty); in huge_ptep_set_access_flags()
|
/linux-4.4.14/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ |
D | nv44.c | 39 dma_addr_t *list, u32 pte, u32 cnt) in nv44_vm_fill() argument 41 u32 base = (pte << 2) & ~0x0000000f; in nv44_vm_fill() 51 switch (pte++ & 0x3) { in nv44_vm_fill() 85 struct nvkm_mem *mem, u32 pte, u32 cnt, dma_addr_t *list) in nv44_vm_map_sg() argument 92 if (pte & 3) { in nv44_vm_map_sg() 93 u32 max = 4 - (pte & 3); in nv44_vm_map_sg() 95 nv44_vm_fill(pgt, mmu->null, list, pte, part); in nv44_vm_map_sg() 96 pte += part; in nv44_vm_map_sg() 104 nvkm_wo32(pgt, pte++ * 4, tmp[0] >> 0 | tmp[1] << 27); in nv44_vm_map_sg() 105 nvkm_wo32(pgt, pte++ * 4, tmp[1] >> 5 | tmp[2] << 22); in nv44_vm_map_sg() [all …]
|
D | gf100.c | 104 struct nvkm_mem *mem, u32 pte, u32 cnt, u64 phys, u64 delta) in gf100_vm_map() argument 109 pte <<= 3; in gf100_vm_map() 121 nvkm_wo32(pgt, pte + 0, lower_32_bits(phys)); in gf100_vm_map() 122 nvkm_wo32(pgt, pte + 4, upper_32_bits(phys)); in gf100_vm_map() 124 pte += 8; in gf100_vm_map() 131 struct nvkm_mem *mem, u32 pte, u32 cnt, dma_addr_t *list) in gf100_vm_map_sg() argument 138 pte <<= 3; in gf100_vm_map_sg() 141 nvkm_wo32(pgt, pte + 0, lower_32_bits(phys)); in gf100_vm_map_sg() 142 nvkm_wo32(pgt, pte + 4, upper_32_bits(phys)); in gf100_vm_map_sg() 143 pte += 8; in gf100_vm_map_sg() [all …]
|
D | nv50.c | 78 struct nvkm_mem *mem, u32 pte, u32 cnt, u64 phys, u64 delta) in nv50_vm_map() argument 93 pte <<= 3; in nv50_vm_map() 103 if (cnt >= block && !(pte & (block - 1))) in nv50_vm_map() 117 nvkm_wo32(pgt, pte + 0, offset_l); in nv50_vm_map() 118 nvkm_wo32(pgt, pte + 4, offset_h); in nv50_vm_map() 119 pte += 8; in nv50_vm_map() 128 struct nvkm_mem *mem, u32 pte, u32 cnt, dma_addr_t *list) in nv50_vm_map_sg() argument 131 pte <<= 3; in nv50_vm_map_sg() 135 nvkm_wo32(pgt, pte + 0, lower_32_bits(phys)); in nv50_vm_map_sg() 136 nvkm_wo32(pgt, pte + 4, upper_32_bits(phys)); in nv50_vm_map_sg() [all …]
|
D | nv41.c | 39 struct nvkm_mem *mem, u32 pte, u32 cnt, dma_addr_t *list) in nv41_vm_map_sg() argument 41 pte = pte * 4; in nv41_vm_map_sg() 47 nvkm_wo32(pgt, pte, (phys >> 7) | 1); in nv41_vm_map_sg() 49 pte += 4; in nv41_vm_map_sg() 57 nv41_vm_unmap(struct nvkm_vma *vma, struct nvkm_memory *pgt, u32 pte, u32 cnt) in nv41_vm_unmap() argument 59 pte = pte * 4; in nv41_vm_unmap() 62 nvkm_wo32(pgt, pte, 0x00000000); in nv41_vm_unmap() 63 pte += 4; in nv41_vm_unmap()
|
D | nv04.c | 37 struct nvkm_mem *mem, u32 pte, u32 cnt, dma_addr_t *list) in nv04_vm_map_sg() argument 39 pte = 0x00008 + (pte * 4); in nv04_vm_map_sg() 45 nvkm_wo32(pgt, pte, phys | 3); in nv04_vm_map_sg() 47 pte += 4; in nv04_vm_map_sg() 55 nv04_vm_unmap(struct nvkm_vma *vma, struct nvkm_memory *pgt, u32 pte, u32 cnt) in nv04_vm_unmap() argument 57 pte = 0x00008 + (pte * 4); in nv04_vm_unmap() 60 nvkm_wo32(pgt, pte, 0x00000000); in nv04_vm_unmap() 61 pte += 4; in nv04_vm_unmap()
|
D | base.c | 39 u32 pte = (offset & ((1 << mmu->func->pgt_bits) - 1)) >> bits; in nvkm_vm_map_at() local 51 end = (pte + num); in nvkm_vm_map_at() 54 len = end - pte; in nvkm_vm_map_at() 56 mmu->func->map(vma, pgt, node, pte, len, phys, delta); in nvkm_vm_map_at() 59 pte += len; in nvkm_vm_map_at() 63 pte = 0; in nvkm_vm_map_at() 84 u32 pte = (offset & ((1 << mmu->func->pgt_bits) - 1)) >> bits; in nvkm_vm_map_sg_table() local 95 end = pte + sglen; in nvkm_vm_map_sg_table() 98 len = end - pte; in nvkm_vm_map_sg_table() 103 mmu->func->map_sg(vma, pgt, mem, pte, 1, &addr); in nvkm_vm_map_sg_table() [all …]
|
/linux-4.4.14/include/asm-generic/ |
D | hugetlb.h | 9 static inline unsigned long huge_pte_write(pte_t pte) in huge_pte_write() argument 11 return pte_write(pte); in huge_pte_write() 14 static inline unsigned long huge_pte_dirty(pte_t pte) in huge_pte_dirty() argument 16 return pte_dirty(pte); in huge_pte_dirty() 19 static inline pte_t huge_pte_mkwrite(pte_t pte) in huge_pte_mkwrite() argument 21 return pte_mkwrite(pte); in huge_pte_mkwrite() 24 static inline pte_t huge_pte_mkdirty(pte_t pte) in huge_pte_mkdirty() argument 26 return pte_mkdirty(pte); in huge_pte_mkdirty() 29 static inline pte_t huge_pte_modify(pte_t pte, pgprot_t newprot) in huge_pte_modify() argument 31 return pte_modify(pte, newprot); in huge_pte_modify()
|
D | pgtable.h | 53 pte_t pte = *ptep; in ptep_test_and_clear_young() local 55 if (!pte_young(pte)) in ptep_test_and_clear_young() 58 set_pte_at(vma->vm_mm, address, ptep, pte_mkold(pte)); in ptep_test_and_clear_young() 116 pte_t pte = *ptep; in ptep_get_and_clear() local 118 return pte; in ptep_get_and_clear() 151 pte_t pte; in ptep_get_and_clear_full() local 152 pte = ptep_get_and_clear(mm, address, ptep); in ptep_get_and_clear_full() 153 return pte; in ptep_get_and_clear_full() 259 static inline int pte_unused(pte_t pte) in pte_unused() argument 285 #define move_pte(pte, prot, old_addr, new_addr) (pte) argument [all …]
|
/linux-4.4.14/arch/parisc/kernel/ |
D | entry.S | 400 .macro L2_ptep pmd,pte,index,va,fault 415 copy %r0,\pte 424 LDREG %r0(\pmd),\pte 425 bb,>=,n \pte,_PAGE_PRESENT_BIT,\fault 438 .macro L3_ptep pgd,pte,index,va,fault 441 copy %r0,\pte 453 L2_ptep \pgd,\pte,\index,\va,\fault 457 .macro tlb_lock spc,ptp,pte,tmp,tmp1,fault 464 LDREG 0(\ptp),\pte 465 bb,<,n \pte,_PAGE_PRESENT_BIT,2f [all …]
|
/linux-4.4.14/arch/mips/mm/ |
D | gup.c | 21 pte_t pte; in gup_get_pte() local 24 pte.pte_low = ptep->pte_low; in gup_get_pte() 26 pte.pte_high = ptep->pte_high; in gup_get_pte() 28 if (unlikely(pte.pte_low != ptep->pte_low)) in gup_get_pte() 31 return pte; in gup_get_pte() 42 pte_t pte = gup_get_pte(ptep); in gup_pte_range() local 45 if (!pte_present(pte) || in gup_pte_range() 46 pte_special(pte) || (write && !pte_write(pte))) { in gup_pte_range() 50 VM_BUG_ON(!pfn_valid(pte_pfn(pte))); in gup_pte_range() 51 page = pte_page(pte); in gup_pte_range() [all …]
|
D | tlbex.c | 726 static void build_huge_update_entries(u32 **p, unsigned int pte, in build_huge_update_entries() argument 746 build_convert_pte_to_entrylo(p, pte); in build_huge_update_entries() 747 UASM_i_MTC0(p, pte, C0_ENTRYLO0); /* load it */ in build_huge_update_entries() 750 UASM_i_ADDIU(p, pte, pte, HPAGE_SIZE >> 7); in build_huge_update_entries() 752 UASM_i_ADDU(p, pte, pte, tmp); in build_huge_update_entries() 754 UASM_i_MTC0(p, pte, C0_ENTRYLO1); /* load it */ in build_huge_update_entries() 759 unsigned int pte, in build_huge_handler_tail() argument 763 UASM_i_SC(p, pte, 0, ptr); in build_huge_handler_tail() 764 uasm_il_beqz(p, r, pte, label_tlb_huge_update); in build_huge_handler_tail() 765 UASM_i_LW(p, pte, 0, ptr); /* Needed because SC killed our PTE */ in build_huge_handler_tail() [all …]
|
D | ioremap.c | 19 static inline void remap_area_pte(pte_t * pte, unsigned long address, in remap_area_pte() argument 34 if (!pte_none(*pte)) { in remap_area_pte() 38 set_pte(pte, pfn_pte(pfn, pgprot)); in remap_area_pte() 41 pte++; in remap_area_pte() 57 pte_t * pte = pte_alloc_kernel(pmd, address); in remap_area_pmd() local 58 if (!pte) in remap_area_pmd() 60 remap_area_pte(pte, address, end - address, address + phys_addr, flags); in remap_area_pmd()
|
/linux-4.4.14/arch/arc/include/asm/ |
D | pgtable.h | 247 #define pte_unmap(pte) do { } while (0) argument 248 #define pte_unmap_nested(pte) do { } while (0) argument 279 #define pte_pfn(pte) (pte_val(pte) >> PAGE_SHIFT) argument 296 #define pte_read(pte) (pte_val(pte) & _PAGE_READ) argument 297 #define pte_write(pte) (pte_val(pte) & _PAGE_WRITE) argument 298 #define pte_dirty(pte) (pte_val(pte) & _PAGE_DIRTY) argument 299 #define pte_young(pte) (pte_val(pte) & _PAGE_ACCESSED) argument 300 #define pte_special(pte) (pte_val(pte) & _PAGE_SPECIAL) argument 303 static inline pte_t pte_##fn(pte_t pte) { pte_val(pte) op; return pte; } 319 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument [all …]
|
D | pgalloc.h | 39 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument 41 pmd_set(pmd, pte); in pmd_populate_kernel() 96 pte_t *pte; in pte_alloc_one_kernel() local 98 pte = (pte_t *) __get_free_pages(GFP_KERNEL | __GFP_REPEAT | __GFP_ZERO, in pte_alloc_one_kernel() 101 return pte; in pte_alloc_one_kernel() 123 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 125 free_pages((unsigned long)pte, __get_order_pte()); /* takes phy addr */ in pte_free_kernel() 134 #define __pte_free_tlb(tlb, pte, addr) pte_free((tlb)->mm, pte) argument
|
/linux-4.4.14/drivers/iommu/ |
D | io-pgtable-arm.c | 170 #define iopte_deref(pte,d) \ argument 171 (__va((pte) & ((1ULL << ARM_LPAE_MAX_ADDR_BITS) - 1) \ 174 #define iopte_type(pte,l) \ argument 175 (((pte) >> ARM_LPAE_PTE_TYPE_SHIFT) & ARM_LPAE_PTE_TYPE_MASK) 177 #define iopte_prot(pte) ((pte) & ARM_LPAE_PTE_ATTR_MASK) argument 179 #define iopte_leaf(pte,l) \ argument 181 (iopte_type(pte,l) == ARM_LPAE_PTE_TYPE_PAGE) : \ 182 (iopte_type(pte,l) == ARM_LPAE_PTE_TYPE_BLOCK)) 184 #define iopte_to_pfn(pte,d) \ argument 185 (((pte) & ((1ULL << ARM_LPAE_MAX_ADDR_BITS) - 1)) >> (d)->pg_shift) [all …]
|
D | tegra-gart.c | 94 unsigned long offs, u32 pte) in gart_set_pte() argument 97 writel(pte, gart->regs + GART_ENTRY_DATA); in gart_set_pte() 100 pte ? "map" : "unmap", offs, pte & GART_PAGE_MASK); in gart_set_pte() 106 unsigned long pte; in gart_read_pte() local 109 pte = readl(gart->regs + GART_ENTRY_DATA); in gart_read_pte() 111 return pte; in gart_read_pte() 133 unsigned long pte; in gart_dump_table() local 135 pte = gart_read_pte(gart, iova); in gart_dump_table() 138 (GART_ENTRY_PHYS_ADDR_VALID & pte) ? "v" : " ", in gart_dump_table() 139 iova, pte & GART_PAGE_MASK); in gart_dump_table() [all …]
|
D | rockchip-iommu.c | 217 static inline phys_addr_t rk_pte_page_address(u32 pte) in rk_pte_page_address() argument 219 return (phys_addr_t)pte & RK_PTE_PAGE_ADDRESS_MASK; in rk_pte_page_address() 222 static inline bool rk_pte_is_page_valid(u32 pte) in rk_pte_is_page_valid() argument 224 return pte & RK_PTE_PAGE_VALID; in rk_pte_is_page_valid() 237 static u32 rk_mk_pte_invalid(u32 pte) in rk_mk_pte_invalid() argument 239 return pte & ~RK_PTE_PAGE_VALID; in rk_mk_pte_invalid() 420 u32 pte = 0; in log_iova() local 440 pte = *pte_addr; in log_iova() 442 if (!rk_pte_is_page_valid(pte)) in log_iova() 445 page_addr_phys = rk_pte_page_address(pte) + page_offset; in log_iova() [all …]
|
D | amd_iommu.c | 1196 u64 *pte; in increase_address_space() local 1202 pte = (void *)get_zeroed_page(gfp); in increase_address_space() 1203 if (!pte) in increase_address_space() 1206 *pte = PM_LEVEL_PDE(domain->mode, in increase_address_space() 1208 domain->pt_root = pte; in increase_address_space() 1222 u64 *pte, *page; in alloc_pte() local 1230 pte = &domain->pt_root[PM_LEVEL_INDEX(level, address)]; in alloc_pte() 1235 if (!IOMMU_PTE_PRESENT(*pte)) { in alloc_pte() 1239 *pte = PM_LEVEL_PDE(level, virt_to_phys(page)); in alloc_pte() 1243 if (PM_PTE_LEVEL(*pte) != level) in alloc_pte() [all …]
|
D | amd_iommu_types.h | 243 #define PM_PTE_LEVEL(pte) (((pte) >> 9) & 0x7ULL) argument 282 #define PTE_PAGE_SIZE(pte) \ argument 283 (1ULL << (1 + ffz(((pte) | 0xfffULL)))) 319 #define IOMMU_PTE_PRESENT(pte) ((pte) & IOMMU_PTE_P) argument 320 #define IOMMU_PTE_PAGE(pte) (phys_to_virt((pte) & IOMMU_PAGE_MASK)) argument 321 #define IOMMU_PTE_MODE(pte) (((pte) >> 9) & 0x07) argument
|
/linux-4.4.14/Documentation/frv/ |
D | mmu-layout.txt | 291 $5 = {{pte = 0x0} <repeats 127 times>, {pte = 0x539b01}, { 292 pte = 0x0} <repeats 896 times>, {pte = 0x719303}, {pte = 0x6d5303}, { 293 pte = 0x0}, {pte = 0x0}, {pte = 0x0}, {pte = 0x0}, {pte = 0x0}, { 294 pte = 0x0}, {pte = 0x0}, {pte = 0x0}, {pte = 0x0}, {pte = 0x6a1303}, { 295 pte = 0x0} <repeats 12 times>, {pte = 0x709303}, {pte = 0x0}, {pte = 0x0}, 296 {pte = 0x6fd303}, {pte = 0x6f9303}, {pte = 0x6f5303}, {pte = 0x0}, { 297 pte = 0x6ed303}, {pte = 0x531b01}, {pte = 0x50db01}, { 298 pte = 0x0} <repeats 13 times>, {pte = 0x5303}, {pte = 0x7f5303}, { 299 pte = 0x509b01}, {pte = 0x505b01}, {pte = 0x7c9303}, {pte = 0x7b9303}, { 300 pte = 0x7b5303}, {pte = 0x7b1303}, {pte = 0x7ad303}, {pte = 0x0}, { [all …]
|
/linux-4.4.14/arch/mn10300/mm/ |
D | pgtable.c | 66 pte_t *pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT); in pte_alloc_one_kernel() local 67 if (pte) in pte_alloc_one_kernel() 68 clear_page(pte); in pte_alloc_one_kernel() 69 return pte; in pte_alloc_one_kernel() 74 struct page *pte; in pte_alloc_one() local 77 pte = alloc_pages(GFP_KERNEL|__GFP_HIGHMEM|__GFP_REPEAT, 0); in pte_alloc_one() 79 pte = alloc_pages(GFP_KERNEL|__GFP_REPEAT, 0); in pte_alloc_one() 81 if (!pte) in pte_alloc_one() 83 clear_highpage(pte); in pte_alloc_one() 84 if (!pgtable_page_ctor(pte)) { in pte_alloc_one() [all …]
|
D | cache-inv-icache.c | 35 pte_t *ppte, pte; in flush_icache_page_range() local 58 pte = *ppte; in flush_icache_page_range() 61 if (pte_none(pte)) in flush_icache_page_range() 64 page = pte_page(pte); in flush_icache_page_range()
|
/linux-4.4.14/arch/um/kernel/ |
D | mem.c | 69 pte_t *pte = (pte_t *) alloc_bootmem_low_pages(PAGE_SIZE); in one_page_table_init() local 71 (unsigned long) __pa(pte))); in one_page_table_init() 72 if (pte != pte_offset_kernel(pmd, 0)) in one_page_table_init() 121 pte_t *pte; in fixaddr_user_init() local 137 pte = pte_offset_kernel(pmd, vaddr); in fixaddr_user_init() 138 pte_set_val(*pte, p, PAGE_READONLY); in fixaddr_user_init() 205 pte_t *pte; in pte_alloc_one_kernel() local 207 pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO); in pte_alloc_one_kernel() 208 return pte; in pte_alloc_one_kernel() 213 struct page *pte; in pte_alloc_one() local [all …]
|
D | tlb.c | 197 pte_t *pte; in update_pte_range() local 200 pte = pte_offset_kernel(pmd, addr); in update_pte_range() 205 r = pte_read(*pte); in update_pte_range() 206 w = pte_write(*pte); in update_pte_range() 207 x = pte_exec(*pte); in update_pte_range() 208 if (!pte_young(*pte)) { in update_pte_range() 211 } else if (!pte_dirty(*pte)) in update_pte_range() 216 if (hvc->force || pte_newpage(*pte)) { in update_pte_range() 217 if (pte_present(*pte)) in update_pte_range() 218 ret = add_mmap(addr, pte_val(*pte) & PAGE_MASK, in update_pte_range() [all …]
|
/linux-4.4.14/arch/x86/mm/kmemcheck/ |
D | kmemcheck.c | 98 pte_t *pte; in kmemcheck_show_addr() local 100 pte = kmemcheck_pte_lookup(address); in kmemcheck_show_addr() 101 if (!pte) in kmemcheck_show_addr() 104 set_pte(pte, __pte(pte_val(*pte) | _PAGE_PRESENT)); in kmemcheck_show_addr() 111 pte_t *pte; in kmemcheck_hide_addr() local 113 pte = kmemcheck_pte_lookup(address); in kmemcheck_hide_addr() 114 if (!pte) in kmemcheck_hide_addr() 117 set_pte(pte, __pte(pte_val(*pte) & ~_PAGE_PRESENT)); in kmemcheck_hide_addr() 271 pte_t *pte; in kmemcheck_show_pages() local 275 pte = lookup_address(address, &level); in kmemcheck_show_pages() [all …]
|
D | pte.c | 9 pte_t *pte; in kmemcheck_pte_lookup() local 12 pte = lookup_address(address, &level); in kmemcheck_pte_lookup() 13 if (!pte) in kmemcheck_pte_lookup() 17 if (!pte_hidden(*pte)) in kmemcheck_pte_lookup() 20 return pte; in kmemcheck_pte_lookup()
|
/linux-4.4.14/arch/um/kernel/skas/ |
D | mmu.c | 23 pte_t *pte; in init_stub_pte() local 34 pte = pte_alloc_map(mm, NULL, pmd, proc); in init_stub_pte() 35 if (!pte) in init_stub_pte() 38 *pte = mk_pte(virt_to_page(kernel), __pgprot(_PAGE_PRESENT)); in init_stub_pte() 39 *pte = pte_mkread(*pte); in init_stub_pte() 126 pte_t *pte; in arch_exit_mmap() local 128 pte = virt_to_pte(mm, STUB_CODE); in arch_exit_mmap() 129 if (pte != NULL) in arch_exit_mmap() 130 pte_clear(mm, STUB_CODE, pte); in arch_exit_mmap() 132 pte = virt_to_pte(mm, STUB_DATA); in arch_exit_mmap() [all …]
|
D | uaccess.c | 43 pte_t *pte = virt_to_pte(current->mm, virt); in maybe_map() local 46 if ((pte == NULL) || !pte_present(*pte) || in maybe_map() 47 (is_write && !pte_write(*pte))) { in maybe_map() 51 pte = virt_to_pte(current->mm, virt); in maybe_map() 53 if (!pte_present(*pte)) in maybe_map() 54 pte = NULL; in maybe_map() 56 return pte; in maybe_map() 64 pte_t *pte; in do_op_one_page() local 67 pte = maybe_map(addr, is_write); in do_op_one_page() 68 if (pte == NULL) in do_op_one_page() [all …]
|
/linux-4.4.14/arch/arm/lib/ |
D | uaccess_with_memcpy.c | 31 pte_t *pte; in pin_page_for_write() local 75 pte = pte_offset_map_lock(current->mm, pmd, addr, &ptl); in pin_page_for_write() 76 if (unlikely(!pte_present(*pte) || !pte_young(*pte) || in pin_page_for_write() 77 !pte_write(*pte) || !pte_dirty(*pte))) { in pin_page_for_write() 78 pte_unmap_unlock(pte, ptl); in pin_page_for_write() 82 *ptep = pte; in pin_page_for_write() 105 pte_t *pte; in __copy_to_user_memcpy() local 109 while (!pin_page_for_write(to, &pte, &ptl)) { in __copy_to_user_memcpy() 129 if (pte) in __copy_to_user_memcpy() 130 pte_unmap_unlock(pte, ptl); in __copy_to_user_memcpy() [all …]
|
/linux-4.4.14/arch/tile/include/hv/ |
D | hypervisor.h | 597 int hv_get_ipi_pte(HV_Coord tile, int pl, HV_PTE* pte); 1848 HV_PTE pte; /**< Page table entry describing the caching and location member 2028 #define hv_pte_val(pte) ((pte).val) argument 2374 hv_pte_get_##name(HV_PTE pte) \ 2376 return (pte.val >> HV_PTE_INDEX_##bit) & 1; \ 2380 hv_pte_set_##name(HV_PTE pte) \ 2382 pte.val |= 1ULL << HV_PTE_INDEX_##bit; \ 2383 return pte; \ 2387 hv_pte_clear_##name(HV_PTE pte) \ 2389 pte.val &= ~(1ULL << HV_PTE_INDEX_##bit); \ [all …]
|
/linux-4.4.14/arch/microblaze/mm/ |
D | pgtable.c | 195 pte_t *pte; in get_pteptr() local 202 pte = pte_offset_kernel(pmd, addr & PAGE_MASK); in get_pteptr() 203 if (pte) { in get_pteptr() 205 *ptep = pte; in get_pteptr() 219 pte_t *pte; in iopa() local 231 if (get_pteptr(mm, addr, &pte)) in iopa() 232 pa = (pte_val(*pte) & PAGE_MASK) | (addr & ~PAGE_MASK); in iopa() 240 pte_t *pte; in pte_alloc_one_kernel() local 242 pte = (pte_t *)__get_free_page(GFP_KERNEL | in pte_alloc_one_kernel() 245 pte = (pte_t *)early_get_page(); in pte_alloc_one_kernel() [all …]
|
/linux-4.4.14/arch/tile/include/asm/ |
D | hugetlb.h | 52 pte_t *ptep, pte_t pte) in set_huge_pte_at() argument 54 set_pte(ptep, pte); in set_huge_pte_at() 69 static inline int huge_pte_none(pte_t pte) in huge_pte_none() argument 71 return pte_none(pte); in huge_pte_none() 74 static inline pte_t huge_pte_wrprotect(pte_t pte) in huge_pte_wrprotect() argument 76 return pte_wrprotect(pte); in huge_pte_wrprotect() 87 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 89 return ptep_set_access_flags(vma, addr, ptep, pte, dirty); in huge_ptep_set_access_flags()
|
D | pgalloc.h | 73 extern void pgtable_free(struct mm_struct *mm, struct page *pte, int order); 81 static inline void pte_free(struct mm_struct *mm, struct page *pte) in pte_free() argument 83 pgtable_free(mm, pte, L2_USER_PGTABLE_ORDER); in pte_free() 94 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 96 BUG_ON((unsigned long)pte & (PAGE_SIZE-1)); in pte_free_kernel() 97 pte_free(mm, virt_to_page(pte)); in pte_free_kernel() 100 extern void __pgtable_free_tlb(struct mmu_gather *tlb, struct page *pte, 102 static inline void __pte_free_tlb(struct mmu_gather *tlb, struct page *pte, in __pte_free_tlb() argument 105 __pgtable_free_tlb(tlb, pte, address, L2_USER_PGTABLE_ORDER); in __pte_free_tlb()
|
D | pgtable.h | 217 #define pte_special(pte) 0 argument 218 #define pte_mkspecial(pte) (pte) argument 243 int va_to_cpa_and_pte(void *va, phys_addr_t *cpa, pte_t *pte); 250 void __set_pte(pte_t *ptep, pte_t pte); 258 extern void set_pte(pte_t *ptep, pte_t pte); 264 static inline int pte_none(pte_t pte) in pte_none() argument 266 return !pte.val; in pte_none() 269 static inline unsigned long pte_pfn(pte_t pte) in pte_pfn() argument 271 return PFN_DOWN(hv_pte_get_pa(pte)); in pte_pfn() 295 #define __pte_to_swp_entry(pte) ((swp_entry_t) { (pte).val >> 32 }) argument [all …]
|
D | pgtable_32.h | 105 pte_t pte = *ptep; in ptep_get_and_clear() local 107 return pte; in ptep_get_and_clear() 117 #define pte_pmd(pte) ((pmd_t){ { (pte) } }) argument
|
/linux-4.4.14/arch/arm/kvm/ |
D | mmu.c | 86 static void kvm_flush_dcache_pte(pte_t pte) in kvm_flush_dcache_pte() argument 88 __kvm_flush_dcache_pte(pte); in kvm_flush_dcache_pte() 210 pte_t *pte, *start_pte; in unmap_ptes() local 212 start_pte = pte = pte_offset_kernel(pmd, addr); in unmap_ptes() 214 if (!pte_none(*pte)) { in unmap_ptes() 215 pte_t old_pte = *pte; in unmap_ptes() 217 kvm_set_pte(pte, __pte(0)); in unmap_ptes() 224 put_page(virt_to_page(pte)); in unmap_ptes() 226 } while (pte++, addr += PAGE_SIZE, addr != end); in unmap_ptes() 309 pte_t *pte; in stage2_flush_ptes() local [all …]
|
/linux-4.4.14/arch/openrisc/mm/ |
D | ioremap.c | 122 pte_t *pte; in pte_alloc_one_kernel() local 125 pte = (pte_t *) __get_free_page(GFP_KERNEL | __GFP_REPEAT); in pte_alloc_one_kernel() 127 pte = (pte_t *) alloc_bootmem_low_pages(PAGE_SIZE); in pte_alloc_one_kernel() 130 pte = (pte_t *) __va(memblock_alloc(PAGE_SIZE, PAGE_SIZE)); in pte_alloc_one_kernel() 134 if (pte) in pte_alloc_one_kernel() 135 clear_page(pte); in pte_alloc_one_kernel() 136 return pte; in pte_alloc_one_kernel()
|
D | init.c | 82 pte_t *pte; in map_ram() local 109 pte = (pte_t *) alloc_bootmem_low_pages(PAGE_SIZE); in map_ram() 110 set_pmd(pme, __pmd(_KERNPG_TABLE + __pa(pte))); in map_ram() 114 v += PAGE_SIZE, p += PAGE_SIZE, j++, pte++) { in map_ram() 121 set_pte(pte, mk_pte_phys(p, prot)); in map_ram()
|
/linux-4.4.14/arch/sh/mm/ |
D | init.c | 74 pte_t *pte; in set_pte_phys() local 76 pte = __get_pte_phys(addr); in set_pte_phys() 77 if (!pte_none(*pte)) { in set_pte_phys() 78 pte_ERROR(*pte); in set_pte_phys() 82 set_pte(pte, pfn_pte(phys >> PAGE_SHIFT, prot)); in set_pte_phys() 86 tlb_wire_entry(NULL, addr, *pte); in set_pte_phys() 91 pte_t *pte; in clear_pte_phys() local 93 pte = __get_pte_phys(addr); in clear_pte_phys() 98 set_pte(pte, pfn_pte(0, __pgprot(0))); in clear_pte_phys() 142 pte_t *pte; in one_page_table_init() local [all …]
|
D | hugetlbpage.c | 30 pte_t *pte = NULL; in huge_pte_alloc() local 38 pte = pte_alloc_map(mm, NULL, pmd, addr); in huge_pte_alloc() 42 return pte; in huge_pte_alloc() 50 pte_t *pte = NULL; in huge_pte_offset() local 58 pte = pte_offset_map(pmd, addr); in huge_pte_offset() 62 return pte; in huge_pte_offset()
|
D | tlbex_32.c | 28 pte_t *pte; in handle_tlbmiss() local 51 pte = pte_offset_kernel(pmd, address); in handle_tlbmiss() 52 entry = *pte; in handle_tlbmiss() 62 set_pte(pte, entry); in handle_tlbmiss() 75 update_mmu_cache(NULL, address, pte); in handle_tlbmiss()
|
D | gup.c | 55 pte_t pte; in gup_get_pte() 58 pte.pte_low = ptep->pte_low; in gup_get_pte() 60 pte.pte_high = ptep->pte_high; in gup_get_pte() 62 if (unlikely(pte.pte_low != ptep->pte_low)) in gup_get_pte() 65 return pte; in gup_get_pte() 98 pte_t pte = gup_get_pte(ptep); in gup_pte_range() local 101 if ((pte_val(pte) & mask) != result) { in gup_pte_range() 105 VM_BUG_ON(!pfn_valid(pte_pfn(pte))); in gup_pte_range() 106 page = pte_page(pte); in gup_pte_range()
|
D | tlbex_64.c | 49 pte_t *pte; in handle_tlbmiss() local 69 pte = pte_offset_kernel(pmd, address); in handle_tlbmiss() 70 entry = *pte; in handle_tlbmiss() 83 update_mmu_cache(NULL, address, pte); in handle_tlbmiss()
|
/linux-4.4.14/include/linux/ |
D | swapops.h | 55 static inline int is_swap_pte(pte_t pte) in is_swap_pte() argument 57 return !pte_none(pte) && !pte_present(pte); in is_swap_pte() 65 static inline swp_entry_t pte_to_swp_entry(pte_t pte) in pte_to_swp_entry() argument 69 if (pte_swp_soft_dirty(pte)) in pte_to_swp_entry() 70 pte = pte_swp_clear_soft_dirty(pte); in pte_to_swp_entry() 71 arch_entry = __pte_to_swp_entry(pte); in pte_to_swp_entry() 143 struct mm_struct *mm, pte_t *pte); 158 struct mm_struct *mm, pte_t *pte) { } in migration_entry_wait_huge() argument
|
/linux-4.4.14/mm/ |
D | memory.c | 648 pte_t pte, struct page *page) in print_bad_pte() argument 685 (long long)pte_val(pte), (long long)pmd_val(*pmd)); in print_bad_pte() 751 pte_t pte) in vm_normal_page() argument 753 unsigned long pfn = pte_pfn(pte); in vm_normal_page() 756 if (likely(!pte_special(pte))) in vm_normal_page() 763 print_bad_pte(vma, addr, pte, NULL); in vm_normal_page() 788 print_bad_pte(vma, addr, pte, NULL); in vm_normal_page() 852 pte_t pte = *src_pte; in copy_one_pte() local 856 if (unlikely(!pte_present(pte))) { in copy_one_pte() 857 swp_entry_t entry = pte_to_swp_entry(pte); in copy_one_pte() [all …]
|
D | rmap.c | 759 pte_t *pte; in __page_check_address() local 764 pte = huge_pte_offset(mm, address); in __page_check_address() 765 if (!pte) in __page_check_address() 768 ptl = huge_pte_lockptr(page_hstate(page), mm, pte); in __page_check_address() 776 pte = pte_offset_map(pmd, address); in __page_check_address() 778 if (!sync && !pte_present(*pte)) { in __page_check_address() 779 pte_unmap(pte); in __page_check_address() 786 if (pte_present(*pte) && page_to_pfn(page) == pte_pfn(*pte)) { in __page_check_address() 788 return pte; in __page_check_address() 790 pte_unmap_unlock(pte, ptl); in __page_check_address() [all …]
|
D | sparse-vmemmap.c | 90 void __meminit vmemmap_verify(pte_t *pte, int node, in vmemmap_verify() argument 93 unsigned long pfn = pte_pfn(*pte); in vmemmap_verify() 103 pte_t *pte = pte_offset_kernel(pmd, addr); in vmemmap_pte_populate() local 104 if (pte_none(*pte)) { in vmemmap_pte_populate() 110 set_pte_at(&init_mm, addr, pte, entry); in vmemmap_pte_populate() 112 return pte; in vmemmap_pte_populate() 158 pte_t *pte; in vmemmap_populate_basepages() local 170 pte = vmemmap_pte_populate(pmd, addr, node); in vmemmap_populate_basepages() 171 if (!pte) in vmemmap_populate_basepages() 173 vmemmap_verify(pte, node, addr, addr + PAGE_SIZE); in vmemmap_populate_basepages()
|
D | gup.c | 38 pte_t *pte, unsigned int flags) in follow_pfn_pte() argument 45 pte_t entry = *pte; in follow_pfn_pte() 51 if (!pte_same(*pte, entry)) { in follow_pfn_pte() 52 set_pte_at(vma->vm_mm, address, pte, entry); in follow_pfn_pte() 53 update_mmu_cache(vma, address, pte); in follow_pfn_pte() 67 pte_t *ptep, pte; in follow_page_pte() local 74 pte = *ptep; in follow_page_pte() 75 if (!pte_present(pte)) { in follow_page_pte() 84 if (pte_none(pte)) in follow_page_pte() 86 entry = pte_to_swp_entry(pte); in follow_page_pte() [all …]
|
D | pagewalk.c | 9 pte_t *pte; in walk_pte_range() local 12 pte = pte_offset_map(pmd, addr); in walk_pte_range() 14 err = walk->pte_entry(pte, addr, addr + PAGE_SIZE, walk); in walk_pte_range() 20 pte++; in walk_pte_range() 23 pte_unmap(pte); in walk_pte_range() 139 pte_t *pte; in walk_hugetlb_range() local 144 pte = huge_pte_offset(walk->mm, addr & hmask); in walk_hugetlb_range() 145 if (pte && walk->hugetlb_entry) in walk_hugetlb_range() 146 err = walk->hugetlb_entry(pte, hmask, addr, next, walk); in walk_hugetlb_range()
|
D | mremap.c | 74 static pte_t move_soft_dirty_pte(pte_t pte) in move_soft_dirty_pte() argument 81 if (pte_present(pte)) in move_soft_dirty_pte() 82 pte = pte_mksoft_dirty(pte); in move_soft_dirty_pte() 83 else if (is_swap_pte(pte)) in move_soft_dirty_pte() 84 pte = pte_swp_mksoft_dirty(pte); in move_soft_dirty_pte() 86 return pte; in move_soft_dirty_pte() 97 pte_t *old_pte, *new_pte, pte; in move_ptes() local 144 pte = ptep_get_and_clear(mm, old_addr, old_pte); in move_ptes() 145 pte = move_pte(pte, new_vma->vm_page_prot, old_addr, new_addr); in move_ptes() 146 pte = move_soft_dirty_pte(pte); in move_ptes() [all …]
|
D | mprotect.c | 44 pte_t *pte; in lock_pte_protection() local 57 pte = pte_offset_map_lock(vma->vm_mm, pmd, addr, ptl); in lock_pte_protection() 59 return pte; in lock_pte_protection() 67 pte_t *pte, oldpte; in change_pte_range() local 71 pte = lock_pte_protection(vma, pmd, addr, prot_numa, &ptl); in change_pte_range() 72 if (!pte) in change_pte_range() 77 oldpte = *pte; in change_pte_range() 98 ptent = ptep_modify_prot_start(mm, addr, pte); in change_pte_range() 109 ptep_modify_prot_commit(mm, addr, pte, ptent); in change_pte_range() 124 set_pte_at(mm, addr, pte, newpte); in change_pte_range() [all …]
|
D | mincore.c | 22 static int mincore_hugetlb(pte_t *pte, unsigned long hmask, unsigned long addr, in mincore_hugetlb() argument 33 present = pte && !huge_pte_none(huge_ptep_get(pte)); in mincore_hugetlb() 133 pte_t pte = *ptep; in mincore_pte_range() local 135 if (pte_none(pte)) in mincore_pte_range() 138 else if (pte_present(pte)) in mincore_pte_range() 141 swp_entry_t entry = pte_to_swp_entry(pte); in mincore_pte_range()
|
/linux-4.4.14/arch/unicore32/kernel/ |
D | hibernate.c | 78 pte_t *pte; in resume_physical_mapping_init() local 102 pte = resume_one_page_table_init(pmd); in resume_physical_mapping_init() 103 if (!pte) in resume_physical_mapping_init() 106 max_pte = pte + PTRS_PER_PTE; in resume_physical_mapping_init() 107 for (; pte < max_pte; pte++, pfn++) { in resume_physical_mapping_init() 111 set_pte(pte, pfn_pte(pfn, PAGE_KERNEL_EXEC)); in resume_physical_mapping_init()
|
/linux-4.4.14/fs/proc/ |
D | task_mmu.c | 488 static void smaps_pte_entry(pte_t *pte, unsigned long addr, in smaps_pte_entry() argument 495 if (pte_present(*pte)) { in smaps_pte_entry() 496 page = vm_normal_page(vma, addr, *pte); in smaps_pte_entry() 497 } else if (is_swap_pte(*pte)) { in smaps_pte_entry() 498 swp_entry_t swpent = pte_to_swp_entry(*pte); in smaps_pte_entry() 519 smaps_account(mss, page, PAGE_SIZE, pte_young(*pte), pte_dirty(*pte)); in smaps_pte_entry() 549 pte_t *pte; in smaps_pte_range() local 565 pte = pte_offset_map_lock(vma->vm_mm, pmd, addr, &ptl); in smaps_pte_range() 566 for (; addr != end; pte++, addr += PAGE_SIZE) in smaps_pte_range() 567 smaps_pte_entry(pte, addr, walk); in smaps_pte_range() [all …]
|
/linux-4.4.14/arch/x86/kvm/ |
D | paging_tmpl.h | 88 #define gpte_to_gfn(pte) gpte_to_gfn_lvl((pte), PT_PAGE_TABLE_LEVEL) argument 131 static inline int FNAME(is_present_gpte)(unsigned long pte) in FNAME() 134 return is_present_gpte(pte); in FNAME() 136 return pte & 7; in FNAME() 205 pt_element_t pte, orig_pte; in FNAME() local 215 pte = orig_pte = walker->ptes[level - 1]; in FNAME() 219 if (!(pte & PT_GUEST_ACCESSED_MASK)) { in FNAME() 220 trace_kvm_mmu_set_accessed_bit(table_gfn, index, sizeof(pte)); in FNAME() 221 pte |= PT_GUEST_ACCESSED_MASK; in FNAME() 224 !(pte & PT_GUEST_DIRTY_MASK)) { in FNAME() [all …]
|
/linux-4.4.14/arch/ia64/mm/ |
D | tlb.c | 425 int ia64_itr_entry(u64 target_mask, u64 va, u64 pte, u64 log_size) in ia64_itr_entry() argument 444 if (p->pte & 0x1) in ia64_itr_entry() 456 if (p->pte & 0x1) in ia64_itr_entry() 468 if (!((ia64_idtrs[cpu] + i)->pte & 0x1)) in ia64_itr_entry() 472 if (!((ia64_idtrs[cpu] + IA64_TR_ALLOC_MAX + i)->pte & 0x1)) in ia64_itr_entry() 476 if (!((ia64_idtrs[cpu] + i)->pte & 0x1) && in ia64_itr_entry() 477 !((ia64_idtrs[cpu] + IA64_TR_ALLOC_MAX + i)->pte & 0x1)) in ia64_itr_entry() 495 ia64_itr(0x1, i, va, pte, log_size); in ia64_itr_entry() 499 p->pte = pte; in ia64_itr_entry() 504 ia64_itr(0x2, i, va, pte, log_size); in ia64_itr_entry() [all …]
|
D | hugetlbpage.c | 34 pte_t *pte = NULL; in huge_pte_alloc() local 41 pte = pte_alloc_map(mm, NULL, pmd, taddr); in huge_pte_alloc() 43 return pte; in huge_pte_alloc() 53 pte_t *pte = NULL; in huge_pte_offset() local 61 pte = pte_offset_map(pmd, taddr); in huge_pte_offset() 65 return pte; in huge_pte_offset()
|
D | init.c | 53 __ia64_sync_icache_dcache (pte_t pte) in __ia64_sync_icache_dcache() argument 58 page = pte_page(pte); in __ia64_sync_icache_dcache() 216 pte_t *pte; in put_kernel_page() local 227 pte = pte_alloc_kernel(pmd, address); in put_kernel_page() 228 if (!pte) in put_kernel_page() 230 if (!pte_none(*pte)) in put_kernel_page() 232 set_pte(pte, mk_pte(page, pgprot)); in put_kernel_page() 390 pte_t *pte; in vmemmap_find_next_valid_pfn() local 410 pte = pte_offset_kernel(pmd, end_address); in vmemmap_find_next_valid_pfn() 412 if (pte_none(*pte)) { in vmemmap_find_next_valid_pfn() [all …]
|
/linux-4.4.14/arch/m68k/sun3/ |
D | mmu_emu.c | 70 void print_pte (pte_t pte) in print_pte() argument 74 unsigned long val = pte_val (pte); in print_pte() 92 unsigned long val = pte_val (pte); in print_pte() 358 pte_t *pte; in mmu_emu_handle_fault() local 384 pte = (pte_t *) pgd_val (*(crp + segment)); in mmu_emu_handle_fault() 387 if (!pte) { in mmu_emu_handle_fault() 392 pte = (pte_t *) __va ((unsigned long)(pte + offset)); in mmu_emu_handle_fault() 395 if (!(pte_val (*pte) & SUN3_PAGE_VALID)) in mmu_emu_handle_fault() 403 sun3_put_pte (vaddr&PAGE_MASK, pte_val (*pte)); in mmu_emu_handle_fault() 411 if (pte_val (*pte) & SUN3_PAGE_WRITEABLE) in mmu_emu_handle_fault() [all …]
|
D | dvma.c | 25 unsigned long pte; in dvma_page() local 33 pte = pte_val(ptep); in dvma_page() 36 if(ptelist[(vaddr & 0xff000) >> PAGE_SHIFT] != pte) { in dvma_page() 37 sun3_put_pte(vaddr, pte); in dvma_page() 38 ptelist[(vaddr & 0xff000) >> PAGE_SHIFT] = pte; in dvma_page()
|
/linux-4.4.14/arch/x86/include/asm/xen/ |
D | page.h | 255 static inline unsigned long pte_mfn(pte_t pte) in pte_mfn() argument 257 return (pte.pte & PTE_PFN_MASK) >> PAGE_SHIFT; in pte_mfn() 262 pte_t pte; in mfn_pte() local 264 pte.pte = ((phys_addr_t)page_nr << PAGE_SHIFT) | in mfn_pte() 267 return pte; in mfn_pte() 270 static inline pteval_t pte_val_ma(pte_t pte) in pte_val_ma() argument 272 return pte.pte; in pte_val_ma() 277 return (pte_t) { .pte = x }; in __pte_ma()
|
/linux-4.4.14/arch/parisc/mm/ |
D | hugetlbpage.c | 52 pte_t *pte = NULL; in huge_pte_alloc() local 66 pte = pte_alloc_map(mm, NULL, pmd, addr); in huge_pte_alloc() 68 return pte; in huge_pte_alloc() 76 pte_t *pte = NULL; in huge_pte_offset() local 86 pte = pte_offset_map(pmd, addr); in huge_pte_offset() 89 return pte; in huge_pte_offset() 174 pte_t pte, int dirty) in huge_ptep_set_access_flags() argument 180 changed = !pte_same(*ptep, pte); in huge_ptep_set_access_flags() 182 __set_huge_pte_at(vma->vm_mm, addr, ptep, pte); in huge_ptep_set_access_flags()
|
/linux-4.4.14/arch/x86/power/ |
D | hibernate_32.c | 86 pte_t *pte; in resume_physical_mapping_init() local 115 pte = resume_one_page_table_init(pmd); in resume_physical_mapping_init() 116 if (!pte) in resume_physical_mapping_init() 119 max_pte = pte + PTRS_PER_PTE; in resume_physical_mapping_init() 120 for (; pte < max_pte; pte++, pfn++) { in resume_physical_mapping_init() 124 set_pte(pte, pfn_pte(pfn, PAGE_KERNEL_EXEC)); in resume_physical_mapping_init()
|
/linux-4.4.14/arch/arm/mm/ |
D | pageattr.c | 28 pte_t pte = *ptep; in change_page_range() local 30 pte = clear_pte_bit(pte, cdata->clear_mask); in change_page_range() 31 pte = set_pte_bit(pte, cdata->set_mask); in change_page_range() 33 set_pte_ext(ptep, pte, 0); in change_page_range()
|
/linux-4.4.14/arch/arm64/mm/ |
D | pageattr.c | 30 pte_t pte = *ptep; in change_page_range() local 32 pte = clear_pte_bit(pte, cdata->clear_mask); in change_page_range() 33 pte = set_pte_bit(pte, cdata->set_mask); in change_page_range() 35 set_pte(ptep, pte); in change_page_range()
|
D | mmu.c | 80 static void split_pmd(pmd_t *pmd, pte_t *pte) in split_pmd() argument 90 set_pte(pte, pfn_pte(pfn, PAGE_KERNEL_EXEC)); in split_pmd() 92 } while (pte++, i++, i < PTRS_PER_PTE); in split_pmd() 100 pte_t *pte; in alloc_init_pte() local 103 pte = alloc(PTRS_PER_PTE * sizeof(pte_t)); in alloc_init_pte() 105 split_pmd(pmd, pte); in alloc_init_pte() 106 __pmd_populate(pmd, __pa(pte), PMD_TYPE_TABLE); in alloc_init_pte() 111 pte = pte_offset_kernel(pmd, addr); in alloc_init_pte() 113 set_pte(pte, pfn_pte(pfn, prot)); in alloc_init_pte() 115 } while (pte++, addr += PAGE_SIZE, addr != end); in alloc_init_pte() [all …]
|
/linux-4.4.14/drivers/gpu/drm/gma500/ |
D | gtt.c | 88 u32 pte; in psb_gtt_insert() local 109 pte = psb_gtt_mask_pte(page_to_pfn(r->pages[i]), in psb_gtt_insert() 111 iowrite32(pte, gtt_slot++); in psb_gtt_insert() 114 pte = psb_gtt_mask_pte(page_to_pfn(r->pages[i]), in psb_gtt_insert() 116 iowrite32(pte, gtt_slot++); in psb_gtt_insert() 137 u32 pte; in psb_gtt_remove() local 143 pte = psb_gtt_mask_pte(page_to_pfn(dev_priv->scratch_page), in psb_gtt_remove() 147 iowrite32(pte, gtt_slot++); in psb_gtt_remove() 165 u32 pte; in psb_gtt_roll() local 183 pte = psb_gtt_mask_pte(page_to_pfn(r->pages[i]), in psb_gtt_roll() [all …]
|
/linux-4.4.14/arch/x86/xen/ |
D | mmu.c | 138 pte_t *pte; in arbitrary_virt_to_machine() local 150 pte = lookup_address(address, &level); in arbitrary_virt_to_machine() 151 BUG_ON(pte == NULL); in arbitrary_virt_to_machine() 153 return XMADDR(((phys_addr_t)pte_mfn(*pte) << PAGE_SHIFT) + offset); in arbitrary_virt_to_machine() 159 pte_t *pte, ptev; in make_lowmem_page_readonly() local 163 pte = lookup_address(address, &level); in make_lowmem_page_readonly() 164 if (pte == NULL) in make_lowmem_page_readonly() 167 ptev = pte_wrprotect(*pte); in make_lowmem_page_readonly() 175 pte_t *pte, ptev; in make_lowmem_page_readwrite() local 179 pte = lookup_address(address, &level); in make_lowmem_page_readwrite() [all …]
|
/linux-4.4.14/arch/sparc/mm/ |
D | leon_mm.c | 41 unsigned int lvl, pte, paddrbase; in leon_swprobe() local 74 pte = pgd; in leon_swprobe() 97 pte = pmd; in leon_swprobe() 125 pte = ped; in leon_swprobe() 148 pte = ptr; in leon_swprobe() 160 (vaddr & ~(-1 << LEON_PTE_SH)) | ((pte & ~0xff) << 4); in leon_swprobe() 164 (vaddr & ~(-1 << LEON_PMD_SH)) | ((pte & ~0xff) << 4); in leon_swprobe() 168 (vaddr & ~(-1 << LEON_PGD_SH)) | ((pte & ~0xff) << 4); in leon_swprobe() 179 return pte; in leon_swprobe()
|
/linux-4.4.14/arch/xtensa/mm/ |
D | tlb.c | 175 pte_t *pte; in get_pte_for_vaddr() local 185 pte = pte_offset_map(pmd, vaddr); in get_pte_for_vaddr() 186 if (!pte) in get_pte_for_vaddr() 188 return pte_val(*pte); in get_pte_for_vaddr() 222 unsigned pte = get_pte_for_vaddr(vpn); in check_tlb_entry() local 238 if ((pte ^ r1) & PAGE_MASK) { in check_tlb_entry() 240 dtlb ? 'D' : 'I', w, e, r0, r1, pte); in check_tlb_entry() 241 if (pte == 0 || !pte_present(__pte(pte))) { in check_tlb_entry()
|
D | mmu.c | 25 pte_t *pte; in init_pmd() local 33 pte = alloc_bootmem_low_pages(n_pages * sizeof(pte_t)); in init_pmd() 36 pte_clear(NULL, 0, pte + i); in init_pmd() 39 pte_t *cur_pte = pte + i; in init_pmd() 47 return pte; in init_pmd()
|
/linux-4.4.14/arch/metag/mm/ |
D | init.c | 48 pte_t *pte; in insert_gateway_page() local 57 pte = alloc_bootmem_pages(PAGE_SIZE); in insert_gateway_page() 58 set_pmd(pmd, __pmd(_PAGE_TABLE | __pa(pte))); in insert_gateway_page() 61 pte = pte_offset_kernel(pmd, address); in insert_gateway_page() 62 set_pte(pte, pfn_pte(__pa(gateway_page) >> PAGE_SHIFT, PAGE_READONLY)); in insert_gateway_page() 268 pte_t *pte; in allocate_pgtables() local 285 pte = (pte_t *)alloc_bootmem_low_pages(PAGE_SIZE); in allocate_pgtables() 286 pmd_populate_kernel(&init_mm, pmd, pte); in allocate_pgtables() 298 pte_t *pte; in fixedrange_init() local 316 pte = pte_offset_kernel(pmd, vaddr); in fixedrange_init() [all …]
|
D | maccess.c | 24 unsigned int pte, i; in probe_kernel_write() local 31 pte = __builtin_meta2_cacherd(dst); in probe_kernel_write() 34 if ((pte & (MMCU_ENTRY_WR_BIT | MMCU_ENTRY_VAL_BIT)) in probe_kernel_write() 39 if (pte & MMCU_ENTRY_WRC_BIT || /* write combined memory */ in probe_kernel_write()
|
/linux-4.4.14/arch/metag/kernel/ |
D | dma.c | 226 pte_t *pte = consistent_pte + CONSISTENT_OFFSET(vaddr); in dma_alloc_coherent() local 238 BUG_ON(!pte_none(*pte)); in dma_alloc_coherent() 242 pte, mk_pte(page, in dma_alloc_coherent() 246 pte++; in dma_alloc_coherent() 297 pte_t pte = ptep_get_and_clear(&init_mm, addr, ptep); in dma_free_coherent() local 303 if (!pte_none(pte) && pte_present(pte)) { in dma_free_coherent() 304 pfn = pte_pfn(pte); in dma_free_coherent() 394 pte_t *pte; in dma_alloc_init() local 404 pte = pte_alloc_kernel(pmd, CONSISTENT_START); in dma_alloc_init() 405 if (!pte) { in dma_alloc_init() [all …]
|
/linux-4.4.14/arch/nios2/mm/ |
D | ioremap.c | 22 static inline void remap_area_pte(pte_t *pte, unsigned long address, in remap_area_pte() argument 39 if (!pte_none(*pte)) { in remap_area_pte() 43 set_pte(pte, pfn_pte(pfn, pgprot)); in remap_area_pte() 46 pte++; in remap_area_pte() 64 pte_t *pte = pte_alloc_kernel(pmd, address); in remap_area_pmd() local 66 if (!pte) in remap_area_pmd() 68 remap_area_pte(pte, address, end - address, address + phys_addr, in remap_area_pmd()
|
/linux-4.4.14/lib/ |
D | ioremap.c | 56 pte_t *pte; in ioremap_pte_range() local 60 pte = pte_alloc_kernel(pmd, addr); in ioremap_pte_range() 61 if (!pte) in ioremap_pte_range() 64 BUG_ON(!pte_none(*pte)); in ioremap_pte_range() 65 set_pte_at(&init_mm, addr, pte, pfn_pte(pfn, prot)); in ioremap_pte_range() 67 } while (pte++, addr += PAGE_SIZE, addr != end); in ioremap_pte_range()
|
/linux-4.4.14/drivers/lguest/ |
D | page_tables.c | 242 static void release_pte(pte_t pte) in release_pte() argument 248 if (pte_flags(pte) & _PAGE_PRESENT) in release_pte() 249 put_page(pte_page(pte)); in release_pte() 799 pte_t *pte = find_spte(cpu, switcher_addr + i * PAGE_SIZE, true, in allocate_switcher_mapping() local 801 if (!pte) in allocate_switcher_mapping() 810 if (i == 0 && !(pte_flags(*pte) & _PAGE_PRESENT)) { in allocate_switcher_mapping() 814 set_pte(pte, in allocate_switcher_mapping() 1145 pte_t *pte; in remove_switcher_percpu_map() local 1148 pte = find_spte(cpu, base, false, 0, 0); in remove_switcher_percpu_map() 1149 release_pte(*pte); in remove_switcher_percpu_map() [all …]
|
/linux-4.4.14/arch/cris/arch-v10/mm/ |
D | fault.c | 50 pte_t pte; in handle_mmu_bus_fault() local 87 pte = *pte_offset_kernel(pmd, address); in handle_mmu_bus_fault() 88 if (!pte_present(pte)) in handle_mmu_bus_fault() 92 *R_TLB_LO = pte_val(pte); in handle_mmu_bus_fault()
|
/linux-4.4.14/arch/tile/gxio/ |
D | iorpc_usb_host.c | 40 HV_PTE pte; member 45 HV_PTE pte, unsigned int flags) in gxio_usb_host_register_client_memory() argument 50 params->pte = pte; in gxio_usb_host_register_client_memory()
|