diff options
author | Mark Brown <broonie@kernel.org> | 2020-08-25 11:01:24 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-08-25 11:01:24 +0100 |
commit | afa86a047edef28004fb3d2a47d3d90309a830a5 (patch) | |
tree | 3c8c4df30900289e41de18db69e732535d1122e4 /mm/memory.c | |
parent | aafdeba5cbc14cecee3797e669473b70a2b3e81e (diff) | |
parent | d012a7190fc1fd72ed48911e77ca97ba4521bccd (diff) |
Merge tag 'v5.9-rc2' into asoc-5.10
Linux 5.9-rc2
Diffstat (limited to 'mm/memory.c')
-rw-r--r-- | mm/memory.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/memory.c b/mm/memory.c index 3a7779d9891d9..602f4283122f7 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -4247,6 +4247,9 @@ static vm_fault_t handle_pte_fault(struct vm_fault *vmf) vmf->flags & FAULT_FLAG_WRITE)) { update_mmu_cache(vmf->vma, vmf->address, vmf->pte); } else { + /* Skip spurious TLB flush for retried page fault */ + if (vmf->flags & FAULT_FLAG_TRIED) + goto unlock; /* * This is needed only for protection faults but the arch code * is not yet telling us if this is a protection fault or not. |