Re: [PATCH v2 2/2] mm/hugetlb: support write-faults in shared mappings

From: David Hildenbrand
Date: Thu Aug 11 2022 - 12:51:59 EST


On 11.08.22 15:59, Peter Xu wrote:
> On Thu, Aug 11, 2022 at 12:34:35PM +0200, David Hildenbrand wrote:
>> Reason is that uffd-wp doesn't clear the uffd-wp PTE bit when
>> unregistering and consequently keeps the PTE writeprotected. Reason for
>> this is to avoid the additional overhead when unregistering. Note
>> that this is the case also for !hugetlb and that we will end up with
>> writable PTEs that still have the uffd-wp PTE bit set once we return
>> from hugetlb_wp(). I'm not touching the uffd-wp PTE bit for now, because it
>> seems to be a generic thing -- wp_page_reuse() also doesn't clear it.
>
> This may justify that lazy reset of ptes may not really be a good idea,
> including anonymous. I'm indeed not aware of any app that do frequent
> reg/unreg at least.

Yeah. QEMU snapshots come to mind, but I guess the reg/unreg overhead is
the smallest issue.


>
> I'll prepare a patch to change it from uffd side too.
>
> Thanks again for finding this problem.

YW!

--
Thanks,

David / dhildenb