Lines Matching refs:pte
158 uint64_t *pte = virt_get_pte(vm, parent_pte, vaddr, current_level); in virt_create_upper_pte() local
162 if (!(*pte & PTE_PRESENT_MASK)) { in virt_create_upper_pte()
163 *pte = PTE_PRESENT_MASK | PTE_WRITABLE_MASK; in virt_create_upper_pte()
165 *pte |= PTE_LARGE_MASK | (paddr & PHYSICAL_PAGE_MASK); in virt_create_upper_pte()
167 *pte |= vm_alloc_page_table(vm) & PHYSICAL_PAGE_MASK; in virt_create_upper_pte()
177 TEST_ASSERT(!(*pte & PTE_LARGE_MASK), in virt_create_upper_pte()
181 return pte; in virt_create_upper_pte()
188 uint64_t *pte; in __virt_pg_map() local
225 pte = virt_get_pte(vm, pde, vaddr, PG_LEVEL_4K); in __virt_pg_map()
226 TEST_ASSERT(!(*pte & PTE_PRESENT_MASK), in __virt_pg_map()
228 *pte = PTE_PRESENT_MASK | PTE_WRITABLE_MASK | (paddr & PHYSICAL_PAGE_MASK); in __virt_pg_map()
235 *pte |= vm->arch.c_bit; in __virt_pg_map()
237 *pte |= vm->arch.s_bit; in __virt_pg_map()
264 static bool vm_is_target_pte(uint64_t *pte, int *level, int current_level) in vm_is_target_pte() argument
266 if (*pte & PTE_LARGE_MASK) { in vm_is_target_pte()
327 uint64_t *pte, *pte_start; in virt_arch_dump() local
376 pte = &pte_start[n4]; in virt_arch_dump()
377 if (!(*pte & PTE_PRESENT_MASK)) in virt_arch_dump()
383 pte - pte_start, pte, in virt_arch_dump()
384 addr_hva2gpa(vm, pte), in virt_arch_dump()
385 PTE_GET_PFN(*pte), in virt_arch_dump()
386 !!(*pte & PTE_WRITABLE_MASK), in virt_arch_dump()
387 !!(*pte & PTE_NX_MASK), in virt_arch_dump()
388 !!(*pte & PTE_DIRTY_MASK), in virt_arch_dump()
469 uint64_t *pte = __vm_get_page_table_entry(vm, gva, &level); in addr_arch_gva2gpa() local
471 TEST_ASSERT(*pte & PTE_PRESENT_MASK, in addr_arch_gva2gpa()
478 return vm_untag_gpa(vm, PTE_GET_PA(*pte)) | (gva & ~HUGEPAGE_MASK(level)); in addr_arch_gva2gpa()