]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: mm: Make flush_tlb_fix_spurious_fault() a no-op
authorWill Deacon <will@kernel.org>
Wed, 30 Sep 2020 12:20:40 +0000 (13:20 +0100)
committerWill Deacon <will@kernel.org>
Thu, 1 Oct 2020 08:45:32 +0000 (09:45 +0100)
commitcaef751cdee9d6838d49602b5bdc08bda0a9dcaf
tree5f504bd8dd7dc5c1b67bedf76ca5726c503979fa
parentb54ad58fd5aaa8ef6839f53e0be06a39d088b392
arm64: mm: Make flush_tlb_fix_spurious_fault() a no-op

Our use of broadcast TLB maintenance means that spurious page-faults
that have been handled already by another CPU do not require additional
TLB maintenance.

Make flush_tlb_fix_spurious_fault() a no-op and rely on the existing TLB
invalidation instead. Add an explicit flush_tlb_page() when making a page
dirty, as the TLB is permitted to cache the old read-only entry.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20200728092220.GA21800@willie-the-truck
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/pgtable.h
arch/arm64/mm/fault.c