Re: [PATCH v3 00/13] arm64: Refactor TLB invalidation API and implementation

From: Catalin Marinas

Date: Fri Mar 13 2026 - 15:44:17 EST


On Mon, 02 Mar 2026 13:55:47 +0000, Ryan Roberts wrote:
> This series refactors the TLB invalidation API to make it more general and
> flexible, and refactors the implementation, aiming to make it more robust,
> easier to understand and easier to add new features in future.
>
> It is heavily based on the series posted by Will back in July at [1]; I've
> attempted to maintain correct authorship and tags - apologies if I got any of
> the etiquette wrong.
>
> [...]

Applied to arm64 (for-next/tlbflush), thanks!

Slight tweak to patch 13 around the last-level vs level 3 comment (both
source comment and the commit log).

[01/13] arm64: mm: Re-implement the __tlbi_level macro as a C function
https://git.kernel.org/arm64/c/5b3fb8a6b429
[02/13] arm64: mm: Introduce a C wrapper for by-range TLB invalidation
https://git.kernel.org/arm64/c/d2bf3226952c
[03/13] arm64: mm: Implicitly invalidate user ASID based on TLBI operation
https://git.kernel.org/arm64/c/edc55b7abb25
[04/13] arm64: mm: Push __TLBI_VADDR() into __tlbi_level()
https://git.kernel.org/arm64/c/a3710035604f
[05/13] arm64: mm: Inline __TLBI_VADDR_RANGE() into __tlbi_range()
https://git.kernel.org/arm64/c/d4b048ca145f
[06/13] arm64: mm: Re-implement the __flush_tlb_range_op macro in C
https://git.kernel.org/arm64/c/5e63b73f3deb
[07/13] arm64: mm: Simplify __TLBI_RANGE_NUM() macro
https://git.kernel.org/arm64/c/057bbd8e0610
[08/13] arm64: mm: Simplify __flush_tlb_range_limit_excess()
https://git.kernel.org/arm64/c/c753d667d959
[09/13] arm64: mm: Refactor flush_tlb_page() to use __tlbi_level_asid()
https://git.kernel.org/arm64/c/64212d689306
[10/13] arm64: mm: Refactor __flush_tlb_range() to take flags
https://git.kernel.org/arm64/c/11f6dd8dd283
[11/13] arm64: mm: More flags for __flush_tlb_range()
https://git.kernel.org/arm64/c/0477fc56960d
[12/13] arm64: mm: Wrap flush_tlb_page() around __do_flush_tlb_range()
https://git.kernel.org/arm64/c/15397e3c3850
[13/13] arm64: mm: Provide level hint for flush_tlb_page()
https://git.kernel.org/arm64/c/752a0d1d483e

--
Catalin