On Thu, Sep 13, 2018 at 11:21:14AM +0200, Peter Zijlstra wrote: > The one obvious thing SH and ARM want is a sensible default for > tlb_start_vma(). (also: https://lkml.org/lkml/2004/1/15/6 ) > > Avoid all VIPT architectures providing their own tlb_start_vma() > implementation and rely on architectures to provide a no-op > flush_cache_range() when it is not relevant. > > The below makes tlb_start_vma() default to flush_cache_range(), which > should be right and sufficient. The only exceptions that I found where > (oddly): > > - m68k-mmu > - sparc64 > - unicore > > Those architectures appear to have flush_cache_range(), but their > current tlb_start_vma() does not call it. > > Cc: Will Deacon <will.deacon@xxxxxxx> > Cc: "Aneesh Kumar K.V" <aneesh.kumar@xxxxxxxxxxxxxxxxxx> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > Cc: Nick Piggin <npiggin@xxxxxxxxx> > Cc: David Miller <davem@xxxxxxxxxxxxx> > Cc: Guan Xuetao <gxt@xxxxxxxxxx> > Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx> > --- > arch/arc/include/asm/tlb.h | 9 --------- > arch/mips/include/asm/tlb.h | 9 --------- > arch/nds32/include/asm/tlb.h | 6 ------ > arch/nios2/include/asm/tlb.h | 10 ---------- > arch/parisc/include/asm/tlb.h | 5 ----- > arch/sparc/include/asm/tlb_32.h | 5 ----- > arch/xtensa/include/asm/tlb.h | 9 --------- > include/asm-generic/tlb.h | 19 +++++++++++-------- > 8 files changed, 11 insertions(+), 61 deletions(-) LGTM and makes no difference to arm/arm64: Acked-by: Will Deacon <will.deacon@xxxxxxx> Will