This isn't readily apparent from reading the code.

Signed-off-by: Palmer Dabbelt <pal...@sifive.com>
---
 arch/riscv/kernel/smpboot.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/riscv/kernel/smpboot.c b/arch/riscv/kernel/smpboot.c
index 5437a04babcd..953bc540207d 100644
--- a/arch/riscv/kernel/smpboot.c
+++ b/arch/riscv/kernel/smpboot.c
@@ -107,6 +107,8 @@ asmlinkage void __init smp_callin(void)
        trap_init();
        notify_cpu_starting(smp_processor_id());
        set_cpu_online(smp_processor_id(), 1);
+       /* Remote TLB flushes are ignored while the CPU is offline, so emit a 
local
+        * TLB flush right now just in case. */
        local_flush_tlb_all();
        local_irq_enable();
        preempt_disable();
-- 
2.16.4

Reply via email to