X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=Documentation%2Ffilesystems%2Fproc.txt;h=219ffd41a9117d1f598f97ba2745e22a371dfc29;hb=4850cf4581578216468b7b3c3d06cc5abb0a697d;hp=fcc1ac09428290c137b67cae87da4189e51c3712;hpb=f84d9fa86820b3074a8c143444a6932c0c0fd019;p=cascardo%2Flinux.git diff --git a/Documentation/filesystems/proc.txt b/Documentation/filesystems/proc.txt index fcc1ac094282..219ffd41a911 100644 --- a/Documentation/filesystems/proc.txt +++ b/Documentation/filesystems/proc.txt @@ -515,6 +515,18 @@ be vanished or the reverse -- new added. This file is only present if the CONFIG_MMU kernel configuration option is enabled. +Note: reading /proc/PID/maps or /proc/PID/smaps is inherently racy (consistent +output can be achieved only in the single read call). +This typically manifests when doing partial reads of these files while the +memory map is being modified. Despite the races, we do provide the following +guarantees: + +1) The mapped addresses never go backwards, which implies no two + regions will ever overlap. +2) 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).