ksm: add sysfs ABI Documentation
Petr Holasek [Sat, 23 Feb 2013 00:35:02 +0000 (16:35 -0800)]
Add sysfs documentation for Kernel Samepage Merging (KSM) including new
merge_across_nodes knob.

Signed-off-by: Petr Holasek <pholasek@redhat.com>
Signed-off-by: Hugh Dickins <hughd@google.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Izik Eidus <izik.eidus@ravellosystems.com>
Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Cc: KOSAKI Motohiro <kosaki.motohiro@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Documentation/ABI/testing/sysfs-kernel-mm-ksm [new file with mode: 0644]

diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-ksm b/Documentation/ABI/testing/sysfs-kernel-mm-ksm
new file mode 100644 (file)
index 0000000..73e653e
--- /dev/null
@@ -0,0 +1,52 @@
+What:          /sys/kernel/mm/ksm
+Date:          September 2009
+KernelVersion: 2.6.32
+Contact:       Linux memory management mailing list <linux-mm@kvack.org>
+Description:   Interface for Kernel Samepage Merging (KSM)
+
+What:          /sys/kernel/mm/ksm/full_scans
+What:          /sys/kernel/mm/ksm/pages_shared
+What:          /sys/kernel/mm/ksm/pages_sharing
+What:          /sys/kernel/mm/ksm/pages_to_scan
+What:          /sys/kernel/mm/ksm/pages_unshared
+What:          /sys/kernel/mm/ksm/pages_volatile
+What:          /sys/kernel/mm/ksm/run
+What:          /sys/kernel/mm/ksm/sleep_millisecs
+Date:          September 2009
+Contact:       Linux memory management mailing list <linux-mm@kvack.org>
+Description:   Kernel Samepage Merging daemon sysfs interface
+
+               full_scans: how many times all mergeable areas have been
+               scanned.
+
+               pages_shared: how many shared pages are being used.
+
+               pages_sharing: how many more sites are sharing them i.e. how
+               much saved.
+
+               pages_to_scan: how many present pages to scan before ksmd goes
+               to sleep.
+
+               pages_unshared: how many pages unique but repeatedly checked
+               for merging.
+
+               pages_volatile: how many pages changing too fast to be placed
+               in a tree.
+
+               run: write 0 to disable ksm, read 0 while ksm is disabled.
+                       write 1 to run ksm, read 1 while ksm is running.
+                       write 2 to disable ksm and unmerge all its pages.
+
+               sleep_millisecs: how many milliseconds ksm should sleep between
+               scans.
+
+               See Documentation/vm/ksm.txt for more information.
+
+What:          /sys/kernel/mm/ksm/merge_across_nodes
+Date:          January 2013
+KernelVersion: 3.9
+Contact:       Linux memory management mailing list <linux-mm@kvack.org>
+Description:   Control merging pages across different NUMA nodes.
+
+               When it is set to 0 only pages from the same node are merged,
+               otherwise pages from all nodes can be merged together (default).