Re: [PATCH] riscv: Fix wrong size passed to local_flush_tlb_range_asid()

From: Dennis Zhou
Date: Mon Jan 29 2024 - 04:01:13 EST


Hi Alexandre,

On Tue, Jan 23, 2024 at 02:27:30PM +0100, Alexandre Ghiti wrote:
> local_flush_tlb_range_asid() takes the size as argument, not the end of
> the range to flush, so fix this by computing the size from the end and
> the start of the range.
>
> Fixes: 7a92fc8b4d20 ("mm: Introduce flush_cache_vmap_early()")
> Signed-off-by: Alexandre Ghiti <alexghiti@xxxxxxxxxxxx>
> ---
> arch/riscv/mm/tlbflush.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/riscv/mm/tlbflush.c b/arch/riscv/mm/tlbflush.c
> index 8d12b26f5ac3..9619965f6501 100644
> --- a/arch/riscv/mm/tlbflush.c
> +++ b/arch/riscv/mm/tlbflush.c
> @@ -68,7 +68,7 @@ static inline void local_flush_tlb_range_asid(unsigned long start,
>
> void local_flush_tlb_kernel_range(unsigned long start, unsigned long end)
> {
> - local_flush_tlb_range_asid(start, end, PAGE_SIZE, FLUSH_TLB_NO_ASID);
> + local_flush_tlb_range_asid(start, end - start, PAGE_SIZE, FLUSH_TLB_NO_ASID);
> }
>
> static void __ipi_flush_tlb_all(void *info)
> --
> 2.39.2
>

Sorry for the delay, I just pulled this into percpu#for-6.8-fixes. I'll
send it to Linus this week.

Thanks,
Dennis