[PATCH -v2 1/2] mm: add spurious fault fixing support for huge pmd
David Hildenbrand
david at redhat.com
Tue Oct 14 07:38:05 PDT 2025
>
> /* 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.
> * This still avoids useless tlb flushes for .text page faults
> * with threads.
> */
> if (vmf->flags & FAULT_FLAG_WRITE)
> flush_tlb_fix_spurious_fault(vmf->vma, vmf->address,
> vmf->pte);
>
>
> So I don't see why it's so egregious to have the equivalent here, or actually
> ideally to abstract the code entirely.
Let's definitely not duplicate such comments whereby one instance will
end up bitrotting.
When talking about spurious faults I assume the educated reader will
usually find the right comments -- like you easily did :P
However I agree that ...
>
> In commit b22cc9a9c7ff ("mm/rmap: convert "enum rmap_level" to "enum
> pgtable_level"") David introduced:
>
> enum pgtable_level {
> PGTABLE_LEVEL_PTE = 0,
> PGTABLE_LEVEL_PMD,
> PGTABLE_LEVEL_PUD,
> PGTABLE_LEVEL_P4D,
> PGTABLE_LEVEL_PGD,
> };
>
> Which allows for sensible abstraction.
... if there is an easier way to just unify the code and have the
comments at a central place, even better.
--
Cheers
David / dhildenb
More information about the linux-arm-kernel
mailing list