Re: [PATCH] /proc/pid/smaps: add mo info for vma in NOMMU system

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07.06.25 18:53, wangfushuai wrote:
Add mo in /proc/[pid]/smaps to indicate vma is marked VM_MAYOVERLAY,
which means the file mapping may overlay in NOMMU system.

Fixes: b6b7a8faf05c ("mm/nommu: don't use VM_MAYSHARE for MAP_PRIVATE mappings")
Signed-off-by: wangfushuai <wangfushuai@xxxxxxxxx>
---
  Documentation/filesystems/proc.rst | 1 +
  fs/proc/task_mmu.c                 | 4 ++++
  2 files changed, 5 insertions(+)

diff --git a/Documentation/filesystems/proc.rst b/Documentation/filesystems/proc.rst
index 2a17865dfe39..d280594656a3 100644
--- a/Documentation/filesystems/proc.rst
+++ b/Documentation/filesystems/proc.rst
@@ -609,6 +609,7 @@ encoded manner. The codes are the following:
      uw    userfaultfd wr-protect tracking
      ss    shadow/guarded control stack page
      sl    sealed
+    mo    may overlay file mapping
      ==    =======================================
Note that there is no guarantee that every flag and associated mnemonic will
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index 27972c0749e7..ad08807847de 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -970,7 +970,11 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma)
  		[ilog2(VM_HUGEPAGE)]	= "hg",
  		[ilog2(VM_NOHUGEPAGE)]	= "nh",
  		[ilog2(VM_MERGEABLE)]	= "mg",
+#ifdef CONFIG_MMU
  		[ilog2(VM_UFFD_MISSING)]= "um",
+#else
+		[ilog2(VM_MAYOVERLAY)]	= "mo",
+#endif
  		[ilog2(VM_UFFD_WP)]	= "uw",
  #ifdef CONFIG_ARM64_MTE
  		[ilog2(VM_MTE)]		= "mt",

That is mostly an internal-only flag. Why would we want to expose that to user space?

--
Cheers,

David / dhildenb





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux