Re: [PATCH v5 6/7] x86/tlb: optimizing flush_tlb_mm

From: Peter Zijlstra
Date: Wed May 16 2012 - 04:04:59 EST


On Wed, 2012-05-16 at 10:00 +0200, Peter Zijlstra wrote:
> On Wed, 2012-05-16 at 14:46 +0800, Alex Shi wrote:
> > diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h
> > index 75e888b..ed6642a 100644
> > --- a/include/asm-generic/tlb.h
> > +++ b/include/asm-generic/tlb.h
> > @@ -86,6 +86,8 @@ struct mmu_gather {
> > #ifdef CONFIG_HAVE_RCU_TABLE_FREE
> > struct mmu_table_batch *batch;
> > #endif
> > + unsigned long start;
> > + unsigned long end;
> > unsigned int need_flush : 1, /* Did free PTEs */
> > fast_mode : 1; /* No batching */
> >
> > diff --git a/mm/memory.c b/mm/memory.c
> > index 6105f47..b176172 100644
> > --- a/mm/memory.c
> > +++ b/mm/memory.c
> > @@ -206,6 +206,8 @@ void tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm, bool fullmm)
> > tlb->mm = mm;
> >
> > tlb->fullmm = fullmm;
> > + tlb->start = -1UL;
> > + tlb->end = 0;
> > tlb->need_flush = 0;
> > tlb->fast_mode = (num_possible_cpus() == 1);
> > tlb->local.next = NULL;

Also, you just broke compilation on a bunch of archs.. again.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/