Re: [PATCH v2 1/5] mm,hugetlb: Change mechanism to detect a COW on private mapping

From: David Hildenbrand
Date: Wed Jun 25 2025 - 06:14:51 EST


On 25.06.25 09:49, Oscar Salvador wrote:
On Mon, Jun 23, 2025 at 04:09:51PM +0200, David Hildenbrand wrote:

- /*
- * hugetlb_wp() requires page locks of pte_page(vmf.orig_pte) and
- * pagecache_folio, so here we need take the former one
- * when folio != pagecache_folio or !pagecache_folio.
- */
+ /* hugetlb_wp() requires page locks of pte_page(vmf.orig_pte) */
folio = page_folio(pte_page(vmf.orig_pte));
- if (folio != pagecache_folio)
- if (!folio_trylock(folio)) {
- need_wait_lock = 1;
- goto out_ptl;
- }
-
+ folio_lock(folio);
folio_get(folio);

Just realized that this won't work for this patch here, as we are holding
the PTL.

In patch #2 you do the right thing.

Yap, missed that.
I might have to do the lock-unlock-dance here, and then in patch#2 move
it to hugetlb_wp.
Sounds reasonable?

Yes

--
Cheers,

David / dhildenb