On Fri, Aug 24, 2018 at 06:07:22AM -0700, Guenter Roeck wrote: > On Thu, Aug 23, 2018 at 06:47:09PM +1000, Nicholas Piggin wrote: > > The generic tlb_end_vma does not call invalidate_range mmu notifier, > > and it resets resets the mmu_gather range, which means the notifier > > won't be called on part of the range in case of an unmap that spans > > multiple vmas. > > > > ARM64 seems to be the only arch I could see that has notifiers and > > uses the generic tlb_end_vma. I have not actually tested it. > > > > Signed-off-by: Nicholas Piggin <npiggin@xxxxxxxxx> > > Acked-by: Will Deacon <will.deacon@xxxxxxx> > > This patch breaks riscv builds in mainline. Looks very similar to the breakage we hit on arm64. diff below should fix it. Will --->* diff --git a/arch/riscv/include/asm/tlb.h b/arch/riscv/include/asm/tlb.h index c229509288ea..5017060be63c 100644 --- a/arch/riscv/include/asm/tlb.h +++ b/arch/riscv/include/asm/tlb.h @@ -14,11 +14,11 @@ #ifndef _ASM_RISCV_TLB_H #define _ASM_RISCV_TLB_H -#include <asm-generic/tlb.h> - static inline void tlb_flush(struct mmu_gather *tlb) { flush_tlb_mm(tlb->mm); } +#include <asm-generic/tlb.h> + #endif /* _ASM_RISCV_TLB_H */