riscv: Ensure page table writes are flushed when initializing KASAN vmalloc
authorAlexandre Ghiti <alex@ghiti.fr>
Sat, 13 Mar 2021 08:45:04 +0000 (03:45 -0500)
committerPalmer Dabbelt <palmerdabbelt@google.com>
Wed, 17 Mar 2021 04:55:18 +0000 (21:55 -0700)
Make sure that writes to kernel page table during KASAN vmalloc
initialization are made visible by adding a sfence.vma.

Signed-off-by: Alexandre Ghiti <alex@ghiti.fr>
Reviewed-by: Palmer Dabbelt <palmerdabbelt@google.com>
Fixes: e178d670f251 ("riscv/kasan: add KASAN_VMALLOC support")
Cc: stable@vger.kernel.org
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
arch/riscv/mm/kasan_init.c

index 3fc18f4..5c35e0f 100644 (file)
@@ -187,6 +187,8 @@ void __init kasan_shallow_populate(void *start, void *end)
                }
                vaddr += PAGE_SIZE;
        }
+
+       local_flush_tlb_all();
 }
 
 void __init kasan_init(void)