Add some more description on the limitations for smaps/maps readings, as well
as some guaruntees we can make.

Signed-off-by: Robert Ho <[email protected]>
---
 Documentation/filesystems/proc.txt | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/filesystems/proc.txt 
b/Documentation/filesystems/proc.txt
index 68080ad..90eabc7 100644
--- a/Documentation/filesystems/proc.txt
+++ b/Documentation/filesystems/proc.txt
@@ -515,6 +515,14 @@ be vanished or the reverse -- new added.
 This file is only present if the CONFIG_MMU kernel configuration option is
 enabled.
 
+Note: for both /proc/PID/maps and /proc/PID/smaps readings, it's
+possible in race conditions, that the mappings printed may not be that
+up-to-date, because during each read walking, the task's mappings may have
+changed, this typically happens in multithread cases. But anyway in each single
+read these can be guarunteed: 1) the mapped addresses doesn't go backward; 2) 
no
+overlaps 3) if there is something at a given vaddr during the entirety of the
+life of the smaps/maps walk, there will be some output for it.
+
 The /proc/PID/clear_refs is used to reset the PG_Referenced and ACCESSED/YOUNG
 bits on both physical and virtual pages associated with a process, and the
 soft-dirty bit on pte (see Documentation/vm/soft-dirty.txt for details).
-- 
1.8.3.1

Reply via email to