Lines Matching defs:vcpu

58 	struct kvm_vcpu vcpu;
95 /* vcpu id table */
100 static inline struct kvmppc_vcpu_e500 *to_e500(struct kvm_vcpu *vcpu)
102 return container_of(vcpu, struct kvmppc_vcpu_e500, vcpu);
127 int kvmppc_e500_emul_tlbwe(struct kvm_vcpu *vcpu);
128 int kvmppc_e500_emul_tlbre(struct kvm_vcpu *vcpu);
129 int kvmppc_e500_emul_tlbivax(struct kvm_vcpu *vcpu, gva_t ea);
130 int kvmppc_e500_emul_tlbilx(struct kvm_vcpu *vcpu, int type, gva_t ea);
131 int kvmppc_e500_emul_tlbsx(struct kvm_vcpu *vcpu, gva_t ea);
135 void kvmppc_get_sregs_e500_tlb(struct kvm_vcpu *vcpu, struct kvm_sregs *sregs);
136 int kvmppc_set_sregs_e500_tlb(struct kvm_vcpu *vcpu, struct kvm_sregs *sregs);
138 int kvmppc_get_one_reg_e500_tlb(struct kvm_vcpu *vcpu, u64 id,
140 int kvmppc_set_one_reg_e500_tlb(struct kvm_vcpu *vcpu, u64 id,
208 static inline unsigned int get_cur_pid(struct kvm_vcpu *vcpu)
210 return vcpu->arch.pid & 0xff;
213 static inline unsigned int get_cur_as(struct kvm_vcpu *vcpu)
215 return !!(vcpu->arch.shared->msr & (MSR_IS | MSR_DS));
218 static inline unsigned int get_cur_pr(struct kvm_vcpu *vcpu)
220 return !!(vcpu->arch.shared->msr & MSR_PR);
223 static inline unsigned int get_cur_spid(const struct kvm_vcpu *vcpu)
225 return (vcpu->arch.shared->mas6 >> 16) & 0xff;
228 static inline unsigned int get_cur_sas(const struct kvm_vcpu *vcpu)
230 return vcpu->arch.shared->mas6 & 0x1;
233 static inline unsigned int get_tlb_tlbsel(const struct kvm_vcpu *vcpu)
239 return (vcpu->arch.shared->mas0 >> 28) & 0x1;
242 static inline unsigned int get_tlb_nv_bit(const struct kvm_vcpu *vcpu)
244 return vcpu->arch.shared->mas0 & 0xfff;
247 static inline unsigned int get_tlb_esel_bit(const struct kvm_vcpu *vcpu)
249 return (vcpu->arch.shared->mas0 >> 16) & 0xfff;
252 static inline int tlbe_is_host_safe(const struct kvm_vcpu *vcpu,
263 if (get_tlb_ts(tlbe) != !!(vcpu->arch.shared->msr & MSR_IS))
268 if (!gfn_to_memslot(vcpu->kvm, gpa >> PAGE_SHIFT))
287 #define kvmppc_e500_get_tlb_stid(vcpu, gtlbe) get_tlb_tid(gtlbe)
288 #define get_tlbmiss_tid(vcpu) get_cur_pid(vcpu)
305 static inline int get_lpid(struct kvm_vcpu *vcpu)
307 return get_thread_specific_lpid(vcpu->kvm->arch.lpid);
310 unsigned int kvmppc_e500_get_tlb_stid(struct kvm_vcpu *vcpu,
313 static inline unsigned int get_tlbmiss_tid(struct kvm_vcpu *vcpu)
315 struct kvmppc_vcpu_e500 *vcpu_e500 = to_e500(vcpu);
316 unsigned int tidseld = (vcpu->arch.shared->mas4 >> 16) & 0xf;
325 static inline bool has_feature(const struct kvm_vcpu *vcpu,
331 has_ftr = ((vcpu->arch.mmucfg & MMUCFG_MAVN) == MMUCFG_MAVN_V2);