lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250628165144.55528-1-sj@kernel.org>
Date: Sat, 28 Jun 2025 09:51:33 -0700
From: SeongJae Park <sj@...nel.org>
To: 
Cc: SeongJae Park <sj@...nel.org>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Jonathan Corbet <corbet@....net>,
	damon@...ts.linux.dev,
	kernel-team@...a.com,
	linux-doc@...r.kernel.org,
	linux-kernel@...r.kernel.org,
	linux-mm@...ck.org
Subject: [RFC PATCH 00/11] mm/damon: advance DAMOS-based LRU sorting

DAMOS_LRU_[DE]PRIO actions were added to DAMOS for more access-aware LRU
lists sorting.  For simple usage, a specialized kernel module, namely
DAMON_LRU_SORT, has also introduced.  After the introduction of
DAMON_LRU_SORT, DAMON got a few important new features, including the
aim-based quota auto-tuning, young page filter, and monitoring intervals
auto-tuning.  But DAMOS-based LRU sorting had no many updates.  Now we
show some rooms to advance for DAMOS-based LRU sorting.

DAMON sysfs interface users can utilize all the features, but
DAMON_LRU_SORT is not updated for such modern features.  Also, even in
case of DAMON sysfs interface usage, there is no good quota auto-tuning
goal metric for LRU sorting.  Since it is a sort of balancing of active
and inactive pages, a metric that represents the size ratio between the
active and the inactive pages could be useful.  Also, internal behaviors
of DAMOS_LRU_[DE]PRIO are not very symmetric.

Advance DAMOS-based LRU sorting by introducing a new DAMOS quota
auto-tuning target metric for [in]active memory size ratio, making
DAMOS_LRU_[DE]PRIO behavior more intuitive and symmetric.  Also update
DAMON_LRU_SORT module to be able to fully utilize the modern features
including the [in]active memory size ratio, young page filter, and
monitoring intervals auto-tuning.

With these changes, for example, users can now ask DAMON to "find
hot/cold memory regions with auto-tuned monitoring intervals, do one
more page level access check for found hot/cold memory, and move pages
of those to active or inactive LRU lists accordingly, aiming 50:50
active to inactive memory ratio."

Plan for none-RFC Version
-------------------------

I'm planning to do more tests and add the results by the final version.

Patches Sequence
----------------

First four patches extend DAMOS quota auto-tuning to support [in]active
memory ratio target metric type.  The patches introduce new metrics
(patch 1), DAMON sysfs support
(patch 2), and add the document (patch 3).

Following patch (patch 4) makes DAMOS_LRU_PRIO action to directly move
target pages to active LRU list, instead of marking accessed and
incrementally be moved to active lists.

Following seven patches (patches 5-11) updates DAMON_LRU_SORT to support
modern DAMON features.  Patch 5 makes it to use not only access
frequency but also age at under-quota regions prioritization.  Patch
6-11 add the support and document it for young page filtering,
active:inactive memory ratio based quota auto-tuning, and monitoring
intervals auto-tuning, respectively.

SeongJae Park (11):
  mm/damon/core: introduce [in]active memory ratio damos quota goal
    metric
  mm/damon/sysfs-schemes: support DAMOS_QUOTA_[IN]ACTIVE_MEM_BP
  Docs/mm/damon/design: document DAMOS_QUOTA_[IN]ACTIVE_MEM_BP
  mm/damon/paddr: activate DAMOS_LRU_PRIO targets instead of marking
    accessed
  mm/damon/lru_sort: consider age for quota prioritization
  mm/damon/lru_sort: support young page filters
  Docs/admin-guide/mm/damon/lru_sort: document filter_young_pages
  mm/damon/lru_sort: support active:inactive memory ratio based
    auto-tuning
  Docs/admin-guide/mm/damon/lru_sort: document active_mem_bp parameter
  mm/damon/lru_sort: add monitoring intervals auto-tuning parameter
  Docs/admin-guide/mm/damon/lru_sort: document intervals autotuning

 .../admin-guide/mm/damon/lru_sort.rst         |  37 ++++++
 Documentation/mm/damon/design.rst             |   4 +
 include/linux/damon.h                         |   4 +
 mm/damon/core.c                               |  22 ++++
 mm/damon/lru_sort.c                           | 110 +++++++++++++++++-
 mm/damon/paddr.c                              |  18 ++-
 mm/damon/sysfs-schemes.c                      |   8 ++
 7 files changed, 189 insertions(+), 14 deletions(-)


base-commit: cd5e995caa32062e89e340acb4acbcbe09ad709e
-- 
2.39.5

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ