mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
mm/vmscan: Maintain TLB coherency in LRU code
As a workaround (and possibly a fix) for CPU spins observed on BCM2837, use ptep_clear_flush_young instead of ptep_test_and_clear_young inside lru_gen_look_around in order to expose PTE changes to the MMU. Note that on architectures that don't require an explicit flush, ptep_clear_flush_young just calls ptep_test_and_clear_young. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
This commit is contained in:
@@ -4294,7 +4294,7 @@ bool lru_gen_look_around(struct page_vma_mapped_walk *pvmw)
|
|||||||
if (!folio)
|
if (!folio)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (!ptep_clear_young_notify(vma, addr, pte + i))
|
if (!ptep_clear_flush_young_notify(vma, addr, pte + i))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (last != folio) {
|
if (last != folio) {
|
||||||
|
|||||||
Reference in New Issue
Block a user