Skip to content

Commit 61c1165

Browse files
Zhenyu Yectmarinas
authored andcommitted
arm64: tlb: don't set the ttl value in flush_tlb_page_nosync
flush_tlb_page_nosync() may be called from pmd level, so we can not set the ttl = 3 here. The callstack is as follows: pmdp_set_access_flags ptep_set_access_flags flush_tlb_fix_spurious_fault flush_tlb_page flush_tlb_page_nosync Fixes: e735b98 ("arm64: Add tlbi_user_level TLB invalidation helper") Reported-by: Catalin Marinas <[email protected]> Signed-off-by: Zhenyu Ye <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Catalin Marinas <[email protected]>
1 parent 34e36d8 commit 61c1165

File tree

1 file changed

+2
-3
lines changed

1 file changed

+2
-3
lines changed

arch/arm64/include/asm/tlbflush.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -209,9 +209,8 @@ static inline void flush_tlb_page_nosync(struct vm_area_struct *vma,
209209
unsigned long addr = __TLBI_VADDR(uaddr, ASID(vma->vm_mm));
210210

211211
dsb(ishst);
212-
/* This function is only called on a small page */
213-
__tlbi_level(vale1is, addr, 3);
214-
__tlbi_user_level(vale1is, addr, 3);
212+
__tlbi(vale1is, addr);
213+
__tlbi_user(vale1is, addr);
215214
}
216215

217216
static inline void flush_tlb_page(struct vm_area_struct *vma,

0 commit comments

Comments
 (0)