From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Ho Subject: [PATCH v3 2/2] Documentation/filesystems/proc.txt: Add more description for maps/smaps Date: Fri, 23 Sep 2016 21:12:34 +0800 Message-ID: <1474636354-25573-2-git-send-email-robert.hu@intel.com> References: <1474636354-25573-1-git-send-email-robert.hu@intel.com> Cc: guangrong.xiao@linux.intel.com, gleb@kernel.org, mtosatti@redhat.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, stefanha@redhat.com, yuhuang@redhat.com, linux-mm@kvack.org, ross.zwisler@linux.intel.com, robert.hu@intel.com To: pbonzini@redhat.com, akpm@linux-foundation.org, mhocko@suse.com, oleg@redhat.com, dan.j.williams@intel.com, dave.hansen@intel.com Return-path: Received: from mga03.intel.com ([134.134.136.65]:9252 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758394AbcIWNNg (ORCPT ); Fri, 23 Sep 2016 09:13:36 -0400 In-Reply-To: <1474636354-25573-1-git-send-email-robert.hu@intel.com> Sender: kvm-owner@vger.kernel.org List-ID: Add some more description on the limitations for smaps/maps readings, as well as some guaruntees we can make. Signed-off-by: Robert Ho --- 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