lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20111224111359.GB3938@alea.gnuu.de>
Date:	Sat, 24 Dec 2011 12:13:59 +0100
From:	Jörg Sommer <joerg@...a.gnuu.de>
To:	Alexander Graf <agraf@...e.de>
Cc:	Avi Kivity <avi@...hat.com>, Marcelo Tosatti <mtosatti@...hat.com>,
	kvm list <kvm@...r.kernel.org>, kvm-ppc@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: 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@...a.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@...a.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)

Download attachment "signature.asc" of type "application/pgp-signature" (199 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ