Lines Matching refs:vpap
521 static int vpa_is_registered(struct kvmppc_vpa *vpap)
523 if (vpap->update_pending)
524 return vpap->next_gpa != 0;
525 return vpap->pinned_addr != NULL;
538 struct kvmppc_vpa *vpap;
570 vpap = NULL;
584 vpap = &tvcpu->arch.vpa;
598 vpap = &tvcpu->arch.dtl;
608 vpap = &tvcpu->arch.slb_shadow;
619 vpap = &tvcpu->arch.vpa;
624 vpap = &tvcpu->arch.dtl;
629 vpap = &tvcpu->arch.slb_shadow;
634 if (vpap) {
635 vpap->next_gpa = vpa;
636 vpap->len = len;
637 vpap->update_pending = 1;
645 static void kvmppc_update_vpa(struct kvm_vcpu *vcpu, struct kvmppc_vpa *vpap)
653 * We need to pin the page pointed to by vpap->next_gpa,
661 gpa = vpap->next_gpa;
668 if (gpa == vpap->next_gpa)
675 vpap->update_pending = 0;
676 if (va && nb < vpap->len) {
685 if (vpap->pinned_addr)
686 kvmppc_unpin_guest_page(kvm, vpap->pinned_addr, vpap->gpa,
687 vpap->dirty);
688 vpap->gpa = gpa;
689 vpap->pinned_addr = va;
690 vpap->dirty = false;
692 vpap->pinned_end = va + vpap->len;