Lines Matching refs:level
15 static uint64_t virt_pte_index(struct kvm_vm *vm, vm_vaddr_t gva, int level) in virt_pte_index() argument
20 shift = level * (vm->page_shift - 3) + vm->page_shift; in virt_pte_index()
67 static int virt_pte_none(uint64_t *ptep, int level) in virt_pte_none() argument
69 return *ptep == invalid_pgtable[level]; in virt_pte_none()
74 int level; in virt_populate_pte() local
82 level = vm->pgtable_levels - 1; in virt_populate_pte()
83 while (level > 0) { in virt_populate_pte()
84 ptep = addr_gpa2hva(vm, child) + virt_pte_index(vm, gva, level) * 8; in virt_populate_pte()
85 if (virt_pte_none(ptep, level)) { in virt_populate_pte()
88 virt_set_pgtable(vm, child, invalid_pgtable[level - 1]); in virt_populate_pte()
95 level--; in virt_populate_pte()
98 ptep = addr_gpa2hva(vm, child) + virt_pte_index(vm, gva, level) * 8; in virt_populate_pte()
140 static void pte_dump(FILE *stream, struct kvm_vm *vm, uint8_t indent, uint64_t page, int level) in pte_dump() argument
145 if (level < 0) in pte_dump()
150 if (virt_pte_none(ptep, level)) in pte_dump()
153 indent, "", type[level], pte, *ptep, ptep); in pte_dump()
154 pte_dump(stream, vm, indent + 1, pte_addr(vm, *ptep), level--); in pte_dump()
160 int level; in virt_arch_dump() local
165 level = vm->pgtable_levels - 1; in virt_arch_dump()
166 pte_dump(stream, vm, indent, vm->pgd, level); in virt_arch_dump()