From f2e82c3d797d9f64ec8f33365c35a2b5f7ea2bbb Mon Sep 17 00:00:00 2001 From: Atish Patra <atish.patra@wdc.com> Date: Tue, 10 Sep 2019 03:40:37 -0700 Subject: lib: Change tlb range flush threshold to 4k page instead of 1G In RISC-V, tlb flush happens at a page granularity. That's why OpenSBI also have a tlb range flush limit which decides the which tlb flush requests should be upgraded to full flush to avoid long delays. Currently, this is set to 1G which would result in a many sfence.vma execution in a tight loop for a large range. Change the threshold to 4k to speed things up. Signed-off-by: Atish Patra <atish.patra@wdc.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Anup Patel <anup.patel@wdc.com> --- include/sbi/sbi_tlb.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/sbi/sbi_tlb.h b/include/sbi/sbi_tlb.h index af77f89..cd52c12 100644 --- a/include/sbi/sbi_tlb.h +++ b/include/sbi/sbi_tlb.h @@ -16,7 +16,7 @@ /* clang-format off */ #define SBI_TLB_FLUSH_ALL ((unsigned long)-1) -#define SBI_TLB_FLUSH_MAX_SIZE (1UL << 30) +#define SBI_TLB_FLUSH_MAX_SIZE (1UL << 12) /* clang-format on */ -- cgit v1.2.3