From: David Hildenbrand Date: Wed, 26 Feb 2025 13:22:54 +0000 (+0100) Subject: mm/memory: remove PageAnonExclusive sanity-check in restore_exclusive_pte() X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=fc4d22d4160c5f588a71dd3cb8c290ba52652719;p=users%2Fjedix%2Flinux-maple.git mm/memory: remove PageAnonExclusive sanity-check in restore_exclusive_pte() In commit b832a354d787 ("mm/memory: page_add_anon_rmap() -> folio_add_anon_rmap_pte()") we accidentally changed the sanity check to essentially ignore anonymous folio by mis-placing the "!" ... but we really always only get anonymous folios in restore_exclusive_pte(). However, in the meantime we removed the separate "writable device-exclusive entries" and always detect if the PTE can be writable using can_change_pte_writable() -- which also consults PageAnonExclusive. So let's just get rid of this sanity check completely. Link: https://lkml.kernel.org/r/20250226132257.2826043-3-david@redhat.com Signed-off-by: David Hildenbrand Cc: Alistair Popple Cc: Jason Gunthorpe Cc: Jérôme Glisse Signed-off-by: Andrew Morton --- diff --git a/mm/memory.c b/mm/memory.c index 26ba5a238d45..17ac1f9e2aa2 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -740,9 +740,6 @@ static void restore_exclusive_pte(struct vm_area_struct *vma, pte = pte_mkdirty(pte); pte = pte_mkwrite(pte, vma); } - - VM_BUG_ON_FOLIO(pte_write(pte) && (!folio_test_anon(folio) && - PageAnonExclusive(page)), folio); set_pte_at(vma->vm_mm, address, ptep, pte); /*