Lines Matching refs:ref
510 static inline void kvmppc_e500_ref_setup(struct tlbe_ref *ref,
514 ref->pfn = pfn;
515 ref->flags = E500_TLB_VALID;
518 ref->flags |= E500_TLB_DIRTY;
521 static inline void kvmppc_e500_ref_release(struct tlbe_ref *ref)
523 if (ref->flags & E500_TLB_VALID) {
524 if (ref->flags & E500_TLB_DIRTY)
525 kvm_release_pfn_dirty(ref->pfn);
527 kvm_release_pfn_clean(ref->pfn);
529 ref->flags = 0;
539 struct tlbe_ref *ref =
540 &vcpu_e500->gtlb_priv[tlbsel][i].ref;
541 kvmppc_e500_ref_release(ref);
553 struct tlbe_ref *ref =
555 kvmppc_e500_ref_release(ref);
591 int tsize, struct tlbe_ref *ref, u64 gvaddr,
594 pfn_t pfn = ref->pfn;
596 BUG_ON(!(ref->flags & E500_TLB_VALID));
611 struct tlbe_ref *ref)
735 /* Drop old ref and setup new one. */
736 kvmppc_e500_ref_release(ref);
737 kvmppc_e500_ref_setup(ref, gtlbe, pfn);
739 kvmppc_e500_setup_stlbe(vcpu_e500, gtlbe, tsize, ref, gvaddr, stlbe);
748 struct tlbe_ref *ref;
751 ref = &vcpu_e500->gtlb_priv[0][esel].ref;
755 gtlbe, 0, stlbe, ref);
765 struct tlbe_ref *ref;
773 ref = &vcpu_e500->tlb_refs[1][victim];
774 kvmppc_e500_shadow_map(vcpu_e500, gvaddr, gfn, gtlbe, 1, stlbe, ref);
1070 &priv->ref, eaddr, &stlbe);