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 <[email protected]>
> > Acked-by: Will Deacon <[email protected]>
>
> 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 */