From mboxrd@z Thu Jan 1 00:00:00 1970 From: Scott Wood Subject: Re: [PATCH] kvm/ppc/booke64: fix build breakage from Altivec, and disable e6500 Date: Fri, 10 May 2013 12:37:17 -0500 Message-ID: <1368207437.19683.1@snotra> References: <300B73AA675FCE4A93EB4FC1D42459FF3FE2FA@039-SN2MPN1-011.039d.mgd.msft.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; delsp=Yes; format=Flowed Content-Transfer-Encoding: 8BIT Cc: Wood Scott-B07421 , Alexander Graf , "kvm-ppc@vger.kernel.org" , "kvm@vger.kernel.org" To: Caraman Mihai Claudiu-B02008 Return-path: In-Reply-To: <300B73AA675FCE4A93EB4FC1D42459FF3FE2FA@039-SN2MPN1-011.039d.mgd.msft.net> (from B02008@freescale.com on Fri May 10 04:40:01 2013) Content-Disposition: inline Sender: kvm-ppc-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 05/10/2013 04:40:01 AM, Caraman Mihai Claudiu-B02008 wrote: > > -----Original Message----- > > From: Wood Scott-B07421 > > Sent: Friday, May 10, 2013 6:15 AM > > To: Alexander Graf > > Cc: kvm-ppc@vger.kernel.org; kvm@vger.kernel.org; Wood Scott-B07421; > > Caraman Mihai Claudiu-B02008 > > Subject: [PATCH] kvm/ppc/booke64: fix build breakage from Altivec, > and > > disable e6500 > > > > BookE altivec support brought two new exceptions, but KVM was not > > updated, so the build broke for all 64-bit booke with KVM enabled. > > We couldn't do that in KVM before having > BOOKE_INTERRUPT_ALTIVEC_UNAVAIL/ > BOOKE_INTERRUPT_ALTIVEC_ASSIST. As Tiejun noticed earlier we should > have > done this in Kumar's tree but we missed that chance. We will face > similar > issues every time an exception handler will be added. Exceptions don't get handled all that often, and ideally we catch it when it's added rather than after-the-fact. > > diff --git a/arch/powerpc/kvm/bookehv_interrupts.S > > b/arch/powerpc/kvm/bookehv_interrupts.S > > index e8ed7d6..6397613 100644 > > --- a/arch/powerpc/kvm/bookehv_interrupts.S > > +++ b/arch/powerpc/kvm/bookehv_interrupts.S > > @@ -309,6 +309,10 @@ kvm_handler BOOKE_INTERRUPT_DOORBELL_CRITICAL, > > EX_PARAMS(CRIT), \ > > SPRN_CSRR0, SPRN_CSRR1, 0 > > kvm_handler BOOKE_INTERRUPT_HV_PRIV, EX_PARAMS(GEN), \ > > SPRN_SRR0, SPRN_SRR1, NEED_EMU > > +kvm_handler BOOKE_INTERRUPT_ALTIVEC_UNAVAIL, EX_PARAMS(GEN), \ > > + SPRN_SRR0, SPRN_SRR1, 0 > > +kvm_handler BOOKE_INTERRUPT_ALTIVEC_ASSIST, EX_PARAMS(GEN), \ > > + SPRN_SRR0, SPRN_SRR1, 0 > > Why not NEED_ESR as we did in our SDK? This is just to fix the build break -- we don't need ESR yet. Though I did look at the ESR documentation and didn't see where Altivec exceptions used it (I do see a couple places now). -Scott