Lines Matching defs:vt

980 static void invalidate_vncr(struct vncr_tlb *vt)
982 vt->valid = false;
983 if (vt->cpu != -1)
984 clear_fixmap(vncr_fixmap(vt->cpu));
1001 struct vncr_tlb *vt;
1009 kvm_for_each_vncr_tlb(i, vcpu, vt, kvm) {
1012 ipa_size = ttl_to_size(pgshift_level_to_ttl(vt->wi.pgshift,
1013 vt->wr.level));
1014 ipa_start = vt->wr.pa & ~(ipa_size - 1);
1020 invalidate_vncr(vt);
1041 struct vncr_tlb *vt;
1046 kvm_for_each_vncr_tlb(i, vcpu, vt, kvm) {
1049 va_size = ttl_to_size(pgshift_level_to_ttl(vt->wi.pgshift,
1050 vt->wr.level));
1051 va_start = vt->gva & ~(va_size - 1);
1062 if (vt->wr.nG && vt->wr.asid != scope->asid)
1073 if (!vt->wr.nG || vt->wr.asid != scope->asid)
1078 invalidate_vncr(vt);
1333 struct vncr_tlb *vt = kzalloc_obj(*vcpu->arch.vncr_tlb,
1343 vcpu->arch.vncr_tlb = vt;
1362 struct vncr_tlb *vt;
1367 vt = vcpu->arch.vncr_tlb;
1379 vt->valid = false;
1381 vt->wi = (struct s1_walk_info) {
1386 vt->wr = (struct s1_walk_result){};
1393 ret = __kvm_translate_va(vcpu, &vt->wi, &vt->wr, va);
1402 gfn = vt->wr.pa >> PAGE_SHIFT;
1416 kvm_prepare_memory_fault_exit(vcpu, vt->wr.pa, PAGE_SIZE,
1428 vt->gva = va;
1429 vt->hpa = pfn << PAGE_SHIFT;
1430 vt->valid = true;
1431 vt->cpu = -1;
1434 kvm_release_faultin_page(vcpu->kvm, page, false, vt->wr.pw);
1437 if (vt->wr.pw)
1445 struct vncr_tlb *vt = vcpu->arch.vncr_tlb;
1451 ESR_ELx_FSC_PERM_L(vt->wr.level));
1458 struct vncr_tlb *vt = vcpu->arch.vncr_tlb;
1462 if (!vt->valid)
1465 if (read_vncr_el2(vcpu) != vt->gva)
1468 if (vt->wr.nG)
1469 return get_asid_by_regime(vcpu, TR_EL20) == vt->wr.asid;
1476 struct vncr_tlb *vt = vcpu->arch.vncr_tlb;
1524 BUG_ON(!vt->wr.failed);
1527 esr |= FIELD_PREP(ESR_ELx_FSC, vt->wr.fst);
1547 struct vncr_tlb *vt = vcpu->arch.vncr_tlb;
1566 if (!vt->valid)
1569 if (read_vncr_el2(vcpu) != vt->gva)
1572 if (vt->wr.nG && get_asid_by_regime(vcpu, TR_EL20) != vt->wr.asid)
1575 vt->cpu = smp_processor_id();
1577 if (vt->wr.pw && vt->wr.pr)
1579 else if (vt->wr.pr)
1591 __set_fixmap(vncr_fixmap(vt->cpu), vt->hpa, prot);