lkml.org 
[lkml]   [2011]   [Dec]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: Current kernel fails to compile with KVM on PowerPC
Jörg Sommer hat am Sat 24. Dec, 11:31 (+0100) geschrieben:
> Alexander Graf hat am Fri 23. Dec, 14:50 (+0100) geschrieben:
> > On 20.12.2011, at 21:27, Jörg Sommer wrote:
> > > Jörg Sommer hat am Mon 07. Nov, 20:48 (+0100) geschrieben:
> > >> CHK include/linux/version.h
> > >> HOSTCC scripts/mod/modpost.o
> > >> CHK include/generated/utsrelease.h
> > >> UPD include/generated/utsrelease.h
> > >> HOSTLD scripts/mod/modpost
> > >> GEN include/generated/bounds.h
> > >> CC arch/powerpc/kernel/asm-offsets.s
> > >> In file included from arch/powerpc/kernel/asm-offsets.c:59:0:
> > >> /home/joerg/git/linux/arch/powerpc/include/asm/kvm_book3s.h: In function ‘compute_tlbie_rb’:
> > >> /home/joerg/git/linux/arch/powerpc/include/asm/kvm_book3s.h:393:10: error: ‘HPTE_V_SECONDARY’ undeclared (first use in this function)
> > >> /home/joerg/git/linux/arch/powerpc/include/asm/kvm_book3s.h:393:10: note: each undeclared identifier is reported only once for each function it appears in
> > >> /home/joerg/git/linux/arch/powerpc/include/asm/kvm_book3s.h:396:12: error: ‘HPTE_V_1TB_SEG’ undeclared (first use in this function)
> > >> /home/joerg/git/linux/arch/powerpc/include/asm/kvm_book3s.h:401:10: error: ‘HPTE_V_LARGE’ undeclared (first use in this function)
> > >> /home/joerg/git/linux/arch/powerpc/include/asm/kvm_book3s.h:415:2: warning: right shift count >= width of type [enabled by default]
> > >> make[3]: *** [arch/powerpc/kernel/asm-offsets.s] Fehler 1
> > >> make[2]: *** [prepare0] Fehler 2
> > >> make[1]: *** [deb-pkg] Fehler 2
> > >> make: *** [deb-pkg] Fehler 2
> > >
> > > I'm so sorry to have to report a new bug in one of your patches. It was
> > > covered by the one above. I've picked the commit for it from your git
> > > repository and now, the kernel build fails with this error:
> > >
> > > BOOTCC arch/powerpc/boot/fdt_strerror.o
> > > BOOTAR arch/powerpc/boot/wrapper.a
> > > WRAP arch/powerpc/boot/zImage.pmac
> > > WRAP arch/powerpc/boot/zImage.coff
> > > ERROR: "kvmppc_h_pr" [arch/powerpc/kvm/kvm.ko] undefined!
> > > make[3]: *** [__modpost] Fehler 1
> > > make[2]: *** [modules] Fehler 2
> > > make[2]: *** Warte auf noch nicht beendete Prozesse...
> > > WRAP arch/powerpc/boot/zImage.miboot
> > > make[1]: *** [deb-pkg] Fehler 2
> > > make: *** [deb-pkg] Fehler 2
> >
> > This is odd. kvmppc_h_pr shouldn't be accessed when not in book3s_64_pr mode:
> >
> > #ifdef CONFIG_KVM_BOOK3S_64_PR
> > if (kvmppc_h_pr(vcpu, cmd) == EMULATE_DONE) {
> > r = RESUME_GUEST;
> > break;
> > }
> > #endif

Is this the change you've thought of?

commit b8624f11e94dd9c2280cb01bf2ede31e4316477d
Author: Jörg Sommer <joerg@alea.gnuu.de>
Date: Sat Dec 24 12:03:03 2011 +0100

KVM: PPC: Use kvmppc_h_pr only if it's available

The function kvmppc_h_pr() is only available when the config option
CONFIG_KVM_BOOK3S_64_PR is set, which is not the case for 32-bit PowerPCs
for example. Building the kernel for these systems failed, because the
symbol could not be resolved.

ERROR: "kvmppc_h_pr" [arch/powerpc/kvm/kvm.ko] undefined!

Signed-off-by: Jörg Sommer <joerg@alea.gnuu.de>

diff --git a/arch/powerpc/kvm/book3s_pr.c b/arch/powerpc/kvm/book3s_pr.c
index 4b0f01b..eddab24 100644
--- a/arch/powerpc/kvm/book3s_pr.c
+++ b/arch/powerpc/kvm/book3s_pr.c
@@ -677,10 +677,12 @@ program_interrupt:
ulong cmd = kvmppc_get_gpr(vcpu, 3);
int i;

+#ifdef CONFIG_KVM_BOOK3S_64_PR
if (kvmppc_h_pr(vcpu, cmd) == EMULATE_DONE) {
r = RESUME_GUEST;
break;
}
+#endif

run->papr_hcall.nr = cmd;
for (i = 0; i < 9; ++i) {
--
„Es wurden und werden zu viele sprachlose Bücher gedruckt, nach deren
schon flüchtiger Lektüre man all die Bäume um Vergebung bitten möchte,
die für den Schund ihr Leben lassen mussten.“ (Michael Jürgs,
Seichtgebiete – Warum wir hemmungslos verblöden)[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2011-12-24 17:37    [W:0.201 / U:0.088 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site