linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] make VM_SOFTDIRTY a sticky VMA flag
@ 2025-11-17 17:33 Lorenzo Stoakes
  2025-11-17 17:33 ` [PATCH v2 1/2] mm: propagate VM_SOFTDIRTY on merge Lorenzo Stoakes
  2025-11-17 17:33 ` [PATCH v2 2/2] testing/selftests/mm: add soft-dirty merge self-test Lorenzo Stoakes
  0 siblings, 2 replies; 8+ messages in thread
From: Lorenzo Stoakes @ 2025-11-17 17:33 UTC (permalink / raw)
  To: Andrew Morton
  Cc: David Hildenbrand, Liam R . Howlett, Vlastimil Babka,
	Mike Rapoport, Suren Baghdasaryan, Michal Hocko, Jann Horn,
	Pedro Falcato, linux-mm, linux-kernel

Currently we set VM_SOFTDIRTY when a new mapping is set up (whether by
establishing a new VMA, or via merge) as implemented in __mmap_complete()
and do_brk_flags().

However, when performing a merge of existing mappings such as when
performing mprotect(), we may lose the VM_SOFTDIRTY flag.

Now we have the concept of making VMA flags 'sticky', that is that they
both don't prevent merge and, importantly, are propagated to merged VMAs,
this seems a sensible alternative to the existing special-casing of
VM_SOFTDIRTY.

We additionally add a self-test that demonstrates that this logic behaves
as expected.

v2:
* Propagated tags (thanks David, Pedro!)
* Corrected comments and added ASCII diagrams as per David.
* Expanded self-test to check for mprotect() case.
* Updated incomplete cover letter.
* Updated commit messages accordingly.

v1:
https://lore.kernel.org/all/cover.1763142412.git.lorenzo.stoakes@oracle.com/

Lorenzo Stoakes (2):
  mm: propagate VM_SOFTDIRTY on merge
  testing/selftests/mm: add soft-dirty merge self-test

 include/linux/mm.h                      |  23 ++---
 tools/testing/selftests/mm/soft-dirty.c | 127 +++++++++++++++++++++++-
 tools/testing/vma/vma_internal.h        |  23 ++---
 3 files changed, 148 insertions(+), 25 deletions(-)

--
2.51.0


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

end of thread, other threads:[~2025-11-19 18:04 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-17 17:33 [PATCH v2 0/2] make VM_SOFTDIRTY a sticky VMA flag Lorenzo Stoakes
2025-11-17 17:33 ` [PATCH v2 1/2] mm: propagate VM_SOFTDIRTY on merge Lorenzo Stoakes
2025-11-17 17:52   ` Andrei Vagin
2025-11-19 17:21     ` Lorenzo Stoakes
2025-11-17 22:54   ` Andrew Morton
2025-11-19 18:04     ` Lorenzo Stoakes
2025-11-19 17:38   ` Vlastimil Babka
2025-11-17 17:33 ` [PATCH v2 2/2] testing/selftests/mm: add soft-dirty merge self-test Lorenzo Stoakes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox