Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
arm64: tlbflush: Ensure start/end of address range are aligned to stride
Since commit 3d65b6b ("arm64: tlbi: Set MAX_TLBI_OPS to PTRS_PER_PTE"), we resort to per-ASID invalidation when attempting to perform more than PTRS_PER_PTE invalidation instructions in a single call to __flush_tlb_range(). Whilst this is beneficial, the mmu_gather code does not ensure that the end address of the range is rounded-up to the stride when freeing intermediate page tables in pXX_free_tlb(), which defeats our range checking. Align the bounds passed into __flush_tlb_range(). Cc: Catalin Marinas <[email protected]> Cc: Peter Zijlstra <[email protected]> Reported-by: Hanjun Guo <[email protected]> Tested-by: Hanjun Guo <[email protected]> Reviewed-by: Hanjun Guo <[email protected]> Signed-off-by: Will Deacon <[email protected]>
- Loading branch information