aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Documentation/admin-guide/mm
diff options
context:
space:
mode:
authorStefan Roesch <shr@devkernel.io>2023-09-25 21:09:38 -0700
committerAndrew Morton <akpm@linux-foundation.org>2023-10-16 15:44:39 -0700
commit75d7dd4138edd54f3b539698cb4c78a8494d305c (patch)
tree2c2bd73c49bb96a1a7b58a9c00af9f91f9699e6a /Documentation/admin-guide/mm
parentmm/ksm: add pages_skipped metric (diff)
downloadwireguard-linux-75d7dd4138edd54f3b539698cb4c78a8494d305c.tar.xz
wireguard-linux-75d7dd4138edd54f3b539698cb4c78a8494d305c.zip
mm/ksm: document smart scan mode
This adds documentation for the smart scan mode of KSM. [akpm@linux-foundation.org: fix typo] [akpm@linux-foundation.org: document that smart_scan defaults to on] Link: https://lkml.kernel.org/r/20230926040939.516161-4-shr@devkernel.io Signed-off-by: Stefan Roesch <shr@devkernel.io> Reviewed-by: David Hildenbrand <david@redhat.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Rik van Riel <riel@surriel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'Documentation/admin-guide/mm')
-rw-r--r--Documentation/admin-guide/mm/ksm.rst9
1 files changed, 9 insertions, 0 deletions
diff --git a/Documentation/admin-guide/mm/ksm.rst b/Documentation/admin-guide/mm/ksm.rst
index 776f244bdae4..9d235c1bbbf2 100644
--- a/Documentation/admin-guide/mm/ksm.rst
+++ b/Documentation/admin-guide/mm/ksm.rst
@@ -155,6 +155,15 @@ stable_node_chains_prune_millisecs
scan. It's a noop if not a single KSM page hit the
``max_page_sharing`` yet.
+smart_scan
+ Historically KSM checked every candidate page for each scan. It did
+ not take into account historic information. When smart scan is
+ enabled, pages that have previously not been de-duplicated get
+ skipped. How often these pages are skipped depends on how often
+ de-duplication has already been tried and failed. By default this
+ optimization is enabled. The ``pages_skipped`` metric shows how
+ effective the setting is.
+
The effectiveness of KSM and MADV_MERGEABLE is shown in ``/sys/kernel/mm/ksm/``:
general_profit