aboutsummaryrefslogtreecommitdiff
path: root/arch/riscv/include/asm/tlb.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/riscv/include/asm/tlb.h')
-rw-r--r--arch/riscv/include/asm/tlb.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/riscv/include/asm/tlb.h b/arch/riscv/include/asm/tlb.h
index a0b8b853503f..1f6c38420d8e 100644
--- a/arch/riscv/include/asm/tlb.h
+++ b/arch/riscv/include/asm/tlb.h
@@ -34,7 +34,7 @@ static inline void __tlb_remove_table(void *table)
static inline void tlb_flush(struct mmu_gather *tlb)
{
#ifdef CONFIG_MMU
- if (tlb->fullmm || tlb->need_flush_all)
+ if (tlb->fullmm || tlb->need_flush_all || tlb->freed_tables)
flush_tlb_mm(tlb->mm);
else
flush_tlb_mm_range(tlb->mm, tlb->start, tlb->end,