[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1394746786-6397-7-git-send-email-n-horiguchi@ah.jp.nec.com>
Date: Thu, 13 Mar 2014 17:39:46 -0400
From: Naoya Horiguchi <n-horiguchi@...jp.nec.com>
To: linux-kernel@...r.kernel.org
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Andi Kleen <andi@...stfloor.org>,
Wu Fengguang <fengguang.wu@...el.com>,
Tony Luck <tony.luck@...el.com>,
Wanpeng Li <liwanp@...ux.vnet.ibm.com>,
Dave Chinner <david@...morbit.com>,
"Jun'ichi Nomura" <j-nomura@...jp.nec.com>, linux-mm@...ck.org
Subject: [PATCH 6/6] Documentation: update Documentation/vm/pagemap.txt
This patch adds a chapter about kpagecache interface.
Signed-off-by: Naoya Horiguchi <n-horiguchi@...jp.nec.com>
---
Documentation/vm/pagemap.txt | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git v3.14-rc6.orig/Documentation/vm/pagemap.txt v3.14-rc6/Documentation/vm/pagemap.txt
index 5948e455c4d2..c8039263fc45 100644
--- v3.14-rc6.orig/Documentation/vm/pagemap.txt
+++ v3.14-rc6/Documentation/vm/pagemap.txt
@@ -150,3 +150,32 @@ once.
Reading from any of the files will return -EINVAL if you are not starting
the read on an 8-byte boundary (e.g., if you sought an odd number of bytes
into the file), or if the size of the read is not a multiple of 8 bytes.
+
+
+kpagecache, from file perspective
+---------------------------------
+
+Similarly to pagemap, we have a interface /proc/kpagecache to let userspace
+know about pagecache profile for a given file. Unlike pagemap interface,
+we don't have to mmap() and fault in the target file, so the impact on other
+workloads (maybe profile targets) is minimum.
+
+To use this interface, firstly we open it and write the name of the target
+file to it for setup. And then we can read the pagecache info of the file.
+The file contains the array of 64-bit entries for each page offset. Data
+format is like below:
+
+ * Bits 0-49 page frame number (PFN) if present
+ * Bits 50-59 zero (reserved)
+ * Bits 60-63 pagecache tags
+
+Good example is tools/vm/page-types.c, where we can get the list of pages
+belonging to the file like below:
+
+ $ dd if=/dev/urandom of=file bs=4096 count=2
+ $ date >> file
+ $ tools/vm/page-types -f file -Nl
+ pgoff pfn tags flags
+ 0 3305f 0 __RU_l______________________________
+ 1 374bb 0 __RU_l______________________________
+ 2 6c5ac 1 ___UDlA_____________________________
--
1.8.5.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists