[PATCH] fixup
From: Lorenzo Stoakes
Date: Mon Nov 17 2025 - 08:24:37 EST
Signed-off-by: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx>
---
mm/madvise.c | 3 +++
mm/mlock.c | 3 +++
mm/mprotect.c | 3 +++
3 files changed, 9 insertions(+)
diff --git a/mm/madvise.c b/mm/madvise.c
index fb1c86e630b6..e651675eaaaf 100644
--- a/mm/madvise.c
+++ b/mm/madvise.c
@@ -172,6 +172,9 @@ static int madvise_update_vma(vm_flags_t new_flags,
if (IS_ERR(vma))
return PTR_ERR(vma);
+ /* Account for sticky flags. */
+ new_flags |= vma->vm_flags;
+
madv_behavior->vma = vma;
/* vm_flags is protected by the mmap_lock held in write mode. */
diff --git a/mm/mlock.c b/mm/mlock.c
index bb0776f5ef7c..7455a1f6a98c 100644
--- a/mm/mlock.c
+++ b/mm/mlock.c
@@ -484,6 +484,9 @@ static int mlock_fixup(struct vma_iterator *vmi, struct vm_area_struct *vma,
goto out;
}
+ /* Account for sticky flags. */
+ newflags |= vma->vm_flags;
+
/*
* Keep track of amount of locked VM.
*/
diff --git a/mm/mprotect.c b/mm/mprotect.c
index ab4e06cd9a69..145417471201 100644
--- a/mm/mprotect.c
+++ b/mm/mprotect.c
@@ -762,6 +762,9 @@ mprotect_fixup(struct vma_iterator *vmi, struct mmu_gather *tlb,
goto fail;
}
+ /* Account for sticky flags. */
+ newflags |= vma->vm_flags;
+
*pprev = vma;
/*
--
2.51.0