Re: [PATCH v3 3/8] mm: implement sticky VMA flags

From: Andrew Morton
Date: Mon Nov 17 2025 - 17:43:50 EST


On Mon, 17 Nov 2025 20:02:03 +0000 Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx> wrote:

> Sorry to be a pain here, and can respin if it's easier, but can we update the
> text of the comments below? As in discussion with Liam off-list we agreed that
> the current wording is rather unclear and we can do a lot better.
>
> I provide the improved version inline below:

np,

include/linux/mm.h | 7 +++----
tools/testing/vma/vma_internal.h | 7 +++----
2 files changed, 6 insertions(+), 8 deletions(-)

--- a/include/linux/mm.h~mm-implement-sticky-vma-flags-fix-2
+++ a/include/linux/mm.h
@@ -549,10 +549,9 @@ extern unsigned int kobjsize(const void
* pressure on the memory system forcing the kernel to generate
* new VMAs when old one could be extended instead.
*
- * VM_STICKY - If one VMA has flags which most be 'sticky', that is ones
- * which should propagate to all VMAs, but the other does not,
- * the merge should still proceed with the merge logic applying
- * sticky flags to the final VMA.
+ * VM_STICKY - When merging VMAs, VMA flags must match, unless they are
+ * 'sticky'. If any sticky flags exist in either VMA, we simply
+ * set all of them on the merged VMA.
*/
#define VM_IGNORE_MERGE (VM_SOFTDIRTY | VM_STICKY)

--- a/tools/testing/vma/vma_internal.h~mm-implement-sticky-vma-flags-fix-2
+++ a/tools/testing/vma/vma_internal.h
@@ -139,10 +139,9 @@ extern unsigned long dac_mmap_min_addr;
* pressure on the memory system forcing the kernel to generate
* new VMAs when old one could be extended instead.
*
- * VM_STICKY - If one VMA has flags which most be 'sticky', that is ones
- * which should propagate to all VMAs, but the other does not,
- * the merge should still proceed with the merge logic applying
- * sticky flags to the final VMA.
+ * VM_STICKY - When merging VMAs, VMA flags must match, unless they are
+ * 'sticky'. If any sticky flags exist in either VMA, we simply
+ * set all of them on the merged VMA.
*/
#define VM_IGNORE_MERGE (VM_SOFTDIRTY | VM_STICKY)

_