Re: Current kernel fails to compile with KVM on PowerPC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxx>
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@xxxxxxxxxxxx>

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)

Attachment: signature.asc
Description: Digital signature http://en.wikipedia.org/wiki/OpenPGP


[Index of Archives]     [KVM Development]     [KVM ARM]     [KVM ia64]     [Linux Virtualization]     [Linux USB Devel]     [Linux Video]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux