[PATCH 0/1] Enhanced TLB flushing for vmap/vmalloc()

From: Dylan Jhong
Date: Mon Aug 07 2023 - 04:23:26 EST


This patch is actually the v2 version of the this patch[1]. In the v1 version,
Alexandre suggested that I should make the patch more general, so I even changed
the title accordingly. Many thanks to Alexandre.

And Alexandre also submitted a similar patch[2] recently, in which he implemented
TLB flushing via flush_cache_vmap() instead. However, it seems that flush_cache_vmap()
does not cover every place where arch_sync_kernel_mappings() performs TLB flushing.
IMHO, arch_sync_kernel_mappings() cannot be replaced by flush_cache_vmap().
Please correct me if I'm wrong!

[1]: [PATCH] riscv: Flush stale TLB entry with VMAP_STACK enabled
http://lists.infradead.org/pipermail/linux-riscv/2023-August/037503.html

[2]: [PATCH -fixes] riscv: Implement flush_cache_vmap()
https://www.spinics.net/lists/kernel/msg4873712.html

Dylan Jhong (1):
riscv: Implement arch_sync_kernel_mappings() for "preventive" TLB
flush

arch/riscv/include/asm/page.h | 2 ++
arch/riscv/mm/tlbflush.c | 12 ++++++++++++
2 files changed, 14 insertions(+)

--
2.34.1