On Thu, Aug 23, 2012 at 05:24:00PM +0900, Takuya Yoshikawa wrote: > On Thu, 23 Aug 2012 15:42:49 +0800 > Gavin Shan <shangw@xxxxxxxxxxxxxxxxxx> wrote: > > > The build error was caused by that builtin functions are calling > > the functions implemented in modules. That was introduced by the > > following commit. > > > > commit 4d8b81abc47b83a1939e59df2fdb0e98dfe0eedd > > > > The patches fix that to convert the gfn to hva in direct way. > > Not just that... > > > > > Signed-off-by: Gavin Shan <shangw@xxxxxxxxxxxxxxxxxx> > > --- > > diff --git a/arch/powerpc/kvm/book3s_hv_rm_mmu.c b/arch/powerpc/kvm/book3s_hv_rm_mmu.c > > index 56ac1a5..0958523 100644 > > --- a/arch/powerpc/kvm/book3s_hv_rm_mmu.c > > +++ b/arch/powerpc/kvm/book3s_hv_rm_mmu.c > > @@ -197,7 +197,8 @@ long kvmppc_h_enter(struct kvm_vcpu *vcpu, unsigned long flags, > > pa &= PAGE_MASK; > > } else { > > /* Translate to host virtual address */ > > - hva = gfn_to_hva_memslot(memslot, gfn); > > + hva = memslot->userspace_addr + > > + (gfn - memslot->base_gfn) * PAGE_SIZE; > > Although I do not think what that commit wanted to do was wrong, > I believe the gfn_to_hva_memslot() change should have been > explained more explicitely, at least, to all users of > the not-anymore-inline function. I definitely agree. The patch description on 4d8b81abc4 is woefully inadequate. > Probably kvm-ppc people should re-check the call sites: what they > want to use may be newly introduced __gfn_to_hva_memslot() which > is equivalent to the original gfn_to_hva_memslot(). Yes, I think we should move __gfn_to_hva_memslot to kvm_host.h and make it static inline, and use it in kvmppc_h_enter(). Paul. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html