> -----Original Message----- > From: Hollis Blanchard [mailto:[EMAIL PROTECTED] > Sent: Friday, September 12, 2008 11:30 PM > To: Liu Yu-B13201 > Cc: kvm-ppc@vger.kernel.org > Subject: RE: [PATCH 2 of 2] kvm: ppc: Rename "struct tlbe" > to"structkvmppc_44x_tlbe" > > On Fri, 2008-09-12 at 11:10 +0800, Liu Yu-B13201 wrote: > > > > > @@ -76,9 +76,9 @@ struct kvm_arch { > > > > > > struct kvm_vcpu_arch { > > > /* Unmodified copy of the guest's TLB. */ > > > - struct tlbe guest_tlb[PPC44x_TLB_SIZE]; > > > + struct kvmppc_44x_tlbe guest_tlb[PPC44x_TLB_SIZE]; > > > /* TLB that's actually used when the guest is running. */ > > > - struct tlbe shadow_tlb[PPC44x_TLB_SIZE]; > > > + struct kvmppc_44x_tlbe shadow_tlb[PPC44x_TLB_SIZE]; > > > /* Pages which are referenced in the shadow TLB. */ > > > struct page *shadow_pages[PPC44x_TLB_SIZE]; > > > > > > > I have been thinking about merge kvm_vcpu_arch of 44x and e500. > > But I'm not sure whether it's worth doing this. > > We could do implement a scheme like to_vmx() in > arch/x86/kvm/vmx.c . See > the thread around > http://article.gmane.org/gmane.comp.emulators.kvm.devel/8516/ for more > discussion. > > This approach will get a little weird in emulate.c, since right now we > kvmppc_emulate_instruction() emulates all instructions for > all cores. We > may need to split that up, for example: > > emulate.c: > switch (opcode) { > case MFSPR: > switch (sprn) { > case SRR0: vcpu->arch.gpr[rt] = vcpu->arch.srr0; > ... > default: > r = kvmppc_emulate_mfspr(vcpu, sprn, > rt); // core hook > if (r) > return EMULATE_FAIL; > } > } > > e500_emulate.c: > int kvmppc_emulate_mfspr(struct kvm_vcpu *vcpu, u32 > sprn, unsigned gpr) > { > struct vcpu_e500 *vcpu_e500 = to_vcpu_e500(vcpu); > int r = 0; > > switch (sprn) { > case MAS0: vcpu->arch.gpr[rt] = vcpu_e500->mas0; > ... > default: > r = -1; > } > > return r; > } > > > I will be traveling and won't have time to look at this next > week, so if > this approach makes sense to you, do you want to send a patch? >
I'd like to. Please commit these two patches. -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html