Lines Matching refs:walker
15 struct kvm_pgtable_walker *walker; member
126 struct kvm_pgtable_walker *walker = data->walker; in kvm_pgtable_visitor_cb() local
130 return walker->cb(ctx, visit); in kvm_pgtable_visitor_cb()
133 static bool kvm_pgtable_walk_continue(const struct kvm_pgtable_walker *walker, in kvm_pgtable_walk_continue() argument
147 return !(walker->flags & KVM_PGTABLE_WALK_HANDLE_FAULT); in kvm_pgtable_walk_continue()
159 enum kvm_pgtable_walk_flags flags = data->walker->flags; in __kvm_pgtable_visit()
160 kvm_pte_t *ptep = kvm_dereference_pteref(data->walker, pteref); in __kvm_pgtable_visit()
164 .arg = data->walker->arg, in __kvm_pgtable_visit()
197 if (!kvm_pgtable_walk_continue(data->walker, ret)) in __kvm_pgtable_visit()
208 if (!kvm_pgtable_walk_continue(data->walker, ret)) in __kvm_pgtable_visit()
215 if (kvm_pgtable_walk_continue(data->walker, ret)) in __kvm_pgtable_visit()
269 struct kvm_pgtable_walker *walker) in kvm_pgtable_walk() argument
275 .walker = walker, in kvm_pgtable_walk()
279 r = kvm_pgtable_walk_begin(walker); in kvm_pgtable_walk()
284 kvm_pgtable_walk_end(walker); in kvm_pgtable_walk()
309 struct kvm_pgtable_walker walker = { in kvm_pgtable_get_leaf() local
317 PAGE_SIZE, &walker); in kvm_pgtable_get_leaf()
440 struct kvm_pgtable_walker walker = { in kvm_pgtable_hyp_map() local
450 ret = kvm_pgtable_walk(pgt, addr, size, &walker); in kvm_pgtable_hyp_map()
499 struct kvm_pgtable_walker walker = { in kvm_pgtable_hyp_unmap() local
508 kvm_pgtable_walk(pgt, addr, size, &walker); in kvm_pgtable_hyp_unmap()
553 struct kvm_pgtable_walker walker = { in kvm_pgtable_hyp_destroy() local
558 WARN_ON(kvm_pgtable_walk(pgt, 0, BIT(pgt->ia_bits), &walker)); in kvm_pgtable_hyp_destroy()
559 pgt->mm_ops->put_page(kvm_dereference_pteref(&walker, pgt->pgd)); in kvm_pgtable_hyp_destroy()
1044 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_map() local
1059 ret = kvm_pgtable_walk(pgt, addr, size, &walker); in kvm_pgtable_stage2_map()
1075 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_set_owner() local
1085 ret = kvm_pgtable_walk(pgt, addr, size, &walker); in kvm_pgtable_stage2_set_owner()
1135 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_unmap() local
1141 ret = kvm_pgtable_walk(pgt, addr, size, &walker); in kvm_pgtable_stage2_unmap()
1204 struct kvm_pgtable_walker walker = { in stage2_update_leaf_attrs() local
1210 ret = kvm_pgtable_walk(pgt, addr, size, &walker); in stage2_update_leaf_attrs()
1280 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_test_clear_young() local
1286 WARN_ON(kvm_pgtable_walk(pgt, addr, size, &walker)); in kvm_pgtable_stage2_test_clear_young()
1332 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_flush() local
1341 return kvm_pgtable_walk(pgt, addr, size, &walker); in kvm_pgtable_stage2_flush()
1355 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_create_unlinked() local
1368 .walker = &walker, in kvm_pgtable_stage2_create_unlinked()
1489 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_split() local
1496 ret = kvm_pgtable_walk(pgt, addr, size, &walker); in kvm_pgtable_stage2_split()
1557 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_destroy() local
1563 WARN_ON(kvm_pgtable_walk(pgt, 0, BIT(pgt->ia_bits), &walker)); in kvm_pgtable_stage2_destroy()
1565 pgt->mm_ops->free_pages_exact(kvm_dereference_pteref(&walker, pgt->pgd), pgd_sz); in kvm_pgtable_stage2_destroy()
1572 struct kvm_pgtable_walker walker = { in kvm_pgtable_stage2_free_unlinked() local
1578 .walker = &walker, in kvm_pgtable_stage2_free_unlinked()