From mboxrd@z Thu Jan 1 00:00:00 1970 From: Will Schmidt Subject: Re: [Announce] 2.6.29-rt2 Date: Fri, 03 Apr 2009 10:30:04 -0500 Message-ID: <1238772604.8813.28.camel@lexx> References: <1238688145.8813.16.camel@lexx> <1238693053.8813.27.camel@lexx> <1238751793.798.22.camel@twins> Reply-To: will_schmidt@vnet.ibm.com Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Cc: Thomas Gleixner , LKML , rt-users , Ingo Molnar , Steven Rostedt , Carsten Emde , Clark Williams , Frank Rowand , Robin Gareus , Gregory Haskins , Philippe Reynes , Fernando Lopez-Lezcano To: Peter Zijlstra Return-path: Received: from e4.ny.us.ibm.com ([32.97.182.144]:35720 "EHLO e4.ny.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758299AbZDCPaH (ORCPT ); Fri, 3 Apr 2009 11:30:07 -0400 In-Reply-To: <1238751793.798.22.camel@twins> Sender: linux-rt-users-owner@vger.kernel.org List-ID: On Fri, 2009-04-03 at 11:43 +0200, Peter Zijlstra wrote: > On Thu, 2009-04-02 at 12:24 -0500, Will Schmidt wrote: > > > > -------- > > > > > > Index: linux-2.6-tip/arch/powerpc/mm/tlb_hash64.c > > > =================================================================== > > > --- linux-2.6-tip.orig/arch/powerpc/mm/tlb_hash64.c > > > +++ linux-2.6-tip/arch/powerpc/mm/tlb_hash64.c > > > @@ -32,6 +32,8 @@ > > > #include > > > #include > > > > > > +DEFINE_PER_CPU(struct ppc64_tlb_batch, ppc64_tlb_batch); > > > + > > > /* > > > * A linux PTE was changed and the corresponding hash table entry > > > * neesd to be flushed. This function will either perform the flush > > Will, could you see if the below makes your splat go away? It does.. booted clean on a power6 blade with this patch applied. Thanks. :-) -Will > > diff --git a/arch/powerpc/include/asm/tlb.h b/arch/powerpc/include/asm/tlb.h > index ec82dac..3ddc8f6 100644 > --- a/arch/powerpc/include/asm/tlb.h > +++ b/arch/powerpc/include/asm/tlb.h > @@ -38,6 +38,8 @@ struct arch_mmu_gather { > struct pte_freelist_batch *batch; > }; > > +#define ARCH_MMU_GATHER_INIT (struct arch_mmu_gather){ .batch = NULL, } > + > #if !defined(CONFIG_PPC_STD_MMU) > > #define tlb_flush(tlb) flush_tlb_mm((tlb)->mm) > diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h > index 7f2167e..50a09de 100644 > --- a/include/asm-generic/tlb.h > +++ b/include/asm-generic/tlb.h > @@ -71,6 +71,10 @@ tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm, unsigned int full_m > tlb->nr = ~0U; > > tlb->fullmm = full_mm_flush; > + > +#ifdef HAVE_ARCH_MMU_GATHER > + tlb->arch = ARCH_MMU_GATHER_INIT; > +#endif > } > > static inline void >