lkml.org 
[lkml]   [2012]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v5 6/7] x86/tlb: optimizing flush_tlb_mm
From
Date
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.


\
 
 \ /
  Last update: 2012-05-16 11:02    [W:0.149 / U:0.456 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site