All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/5] mm/rmap: Refactor try_to_unmap_one
@ 2026-07-13  5:00 Dev Jain
  2026-07-13  5:00 ` [PATCH v3 1/5] mm/rmap: convert page -> folio for hwpoison checks Dev Jain
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Dev Jain @ 2026-07-13  5:00 UTC (permalink / raw)
  To: akpm, david, ljs, muchun.song, osalvador
  Cc: Dev Jain, riel, liam, vbabka, harry, jannh, lance.yang, linux-mm,
	linux-kernel, ryan.roberts, anshuman.khandual

In preparation for batching anonymous large folio unmapping to optimize it,
refactor try_to_unmap_one. This series refactors hugetlb, anon-lazyfree
and anon-swapbacked logic into their own functions, significantly
reducing the length of the huge try_to_unmap_one.

---
Split out from
https://lore.kernel.org/all/20260526063635.61721-1-dev.jain@arm.com/

mm-selftests pass on arm64, built on arm64 and x86.

v2->v3:
 - Patch 2: fix comment to say that TTU_HWPOISON can be true for small
   folios only in try_to_unmap_one, since hugetlb bits are now refactored
   away
 - Patch 5: Directly do if (WARN_ON_ONCE())
 - Rebase on latest mm-unstable to resolve conflicts with 30c83145c5b3
   ("mm: rename uffd-wp PTE accessors to uffd")

v1->v2:
 - constify ttu flags in try_to_unmap_hugetlb_one, move const variables up
 - Assert address passed to try_to_unmap_hugetlb_one equals pvmw.address
 - Patch 3: code and comment polishing, do the stat update in the function
 - Remove unnecessary inline hints, remove set_swp_pte_at, instead have
   swp_pte_prepare + set_ptes. Rename subpage -> page. constify
   anon_exclusive.
 - Do pte restoration in caller

Dev Jain (5):
  mm/rmap: convert page -> folio for hwpoison checks
  mm/rmap: Add try_to_unmap_hugetlb_one
  mm/rmap: refactor some code around lazyfree folio unmapping
  mm/rmap: refactor anon folio unmap in try_to_unmap_one
  mm/rmap: add anon folio unmap dispatcher

 include/linux/hugetlb.h |   1 +
 mm/rmap.c               | 415 ++++++++++++++++++++++------------------
 2 files changed, 232 insertions(+), 184 deletions(-)

-- 
2.43.0



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-07-13  5:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-13  5:00 [PATCH v3 0/5] mm/rmap: Refactor try_to_unmap_one Dev Jain
2026-07-13  5:00 ` [PATCH v3 1/5] mm/rmap: convert page -> folio for hwpoison checks Dev Jain
2026-07-13  5:00 ` [PATCH v3 2/5] mm/rmap: Add try_to_unmap_hugetlb_one Dev Jain
2026-07-13  5:00 ` [PATCH v3 3/5] mm/rmap: refactor some code around lazyfree folio unmapping Dev Jain
2026-07-13  5:00 ` [PATCH v3 4/5] mm/rmap: refactor anon folio unmap in try_to_unmap_one Dev Jain
2026-07-13  5:00 ` [PATCH v3 5/5] mm/rmap: add anon folio unmap dispatcher Dev Jain

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.