[PATCH v1 3/3] arm64/mm: Elide tlbi in contpte_convert() under BBML2

From: Mikołaj Lenczewski
Date: Wed Feb 19 2025 - 09:46:51 EST


If we support bbml2 without conflict aborts, we can avoid the final
flush and have hardware manage the tlb entries for us. Avoiding flushes
is a win.

Signed-off-by: Mikołaj Lenczewski <miko.lenczewski@xxxxxxx>
Reviewed-by: Ryan Roberts <ryan.roberts@xxxxxxx>
---
arch/arm64/mm/contpte.c | 3 ---
1 file changed, 3 deletions(-)

diff --git a/arch/arm64/mm/contpte.c b/arch/arm64/mm/contpte.c
index e26e8f8cfb9b..26a86248f897 100644
--- a/arch/arm64/mm/contpte.c
+++ b/arch/arm64/mm/contpte.c
@@ -72,9 +72,6 @@ static void contpte_convert(struct mm_struct *mm, unsigned long addr,
__flush_tlb_range(&vma, start_addr, addr, PAGE_SIZE, true, 3);

__set_ptes(mm, start_addr, start_ptep, pte, CONT_PTES);
-
- if (system_supports_bbml2_noconflict())
- __flush_tlb_range(&vma, start_addr, addr, PAGE_SIZE, true, 3);
}

void __contpte_try_fold(struct mm_struct *mm, unsigned long addr,
--
2.45.3