On Fri, Aug 7, 2020 at 1:53 PM Yang Shi <shy828301@xxxxxxxxx> wrote: > > I'm supposed Catalin would submit his proposal (flush local TLB for > spurious TLB fault on ARM) for this specific regression per the > discussion, right? I think arm64 should do that regardless, yes. But I would also be ok with a version that does the FAULT_FLAG_TRIED testing, but does it only for that spurious TLB flushing. This "let's not update the page tables at all" is wrong, when the only problem was the TLB flushing. So changing the current (but quesitonable) if (vmf->flags & FAULT_FLAG_WRITE) flush_tlb_fix_spurious_fault(vmf->vma, vmf->address); to be if (vmf->flags & (FAULT_FLAG_WRITE | FAULT_FLAG_TRIED)) flush_tlb_fix_spurious_fault(vmf->vma, vmf->address); would be fine. But this patch that changes any semantics outside just the flushin gis a complete no-no. Linus