* [PATCH 0/6] mm/damon: misc improvements in tests and documents
@ 2026-09-14 14:19 SJ Park
2026-09-14 14:19 ` [PATCH 1/6] selftests/damon: stop kdamond on error exits of no-op commit test SJ Park
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:19 UTC (permalink / raw)
To: Andrew Morton
Cc: SJ Park, Liam R. Howlett, Brendan Higgins, David Gow,
David Hildenbrand, Jonathan Corbet, Lorenzo Stoakes,
Michal Hocko, Mike Rapoport, Randy Dunlap, Sang-Heon Jeon,
Shuah Khan, Shuah Khan, Suren Baghdasaryan, Vlastimil Babka,
damon, kunit-dev, linux-doc, linux-kernel, linux-kselftest,
linux-mm
Add various improvements to DAMON tests and documents.
Patch 1 and 2 from Zenghui Yu (Huawei) let DAMON selftest to clean up
its state and output after running the tests. Patch 3 from Eva
Kurchatova makes a few selftest be able to run with Python's safe path
mode. Patch 4 from Kunwu Chan improves coverage of DAMON kunit tests.
Finally, patches 5 and 6 from Liew Rui Yan clarify and fix typos on
documents for DAMOS quota behaviors.
Below are notes that can be removed in the final commit message.
This is a batched repost of DAMON patches that were individually posted.
Please refer to each patch for changelog.
Eva Kurchatova (1):
selftests/damon: add script dir to sys.path for PYTHONSAFEPATH
compatibility
Kunwu Chan (1):
mm/damon/tests/core-kunit: improve nr_samples_per_aggr test isolation
Liew Rui Yan (2):
Docs/mm/damon/design: clarify when qt_exceeds increases
Docs/mm/damon/design: fix typos in temporal auto-tuning algorithm
section
Zenghui Yu (Huawei) (2):
selftests/damon: stop kdamond on error exits of no-op commit test
selftests/damon: ignore test-generated damon_dump_output
Documentation/mm/damon/design.rst | 8 +++--
mm/damon/tests/core-kunit.h | 19 +++++++---
tools/testing/selftests/damon/.gitignore | 1 +
.../selftests/damon/damon_nr_regions.py | 3 ++
.../selftests/damon/damos_apply_interval.py | 3 ++
tools/testing/selftests/damon/damos_quota.py | 3 ++
.../selftests/damon/damos_quota_goal.py | 3 ++
.../selftests/damon/damos_tried_regions.py | 3 ++
.../damon/sysfs_no_op_commit_break.py | 35 ++++++++++---------
...sysfs_update_schemes_tried_regions_hang.py | 3 ++
...te_schemes_tried_regions_wss_estimation.py | 3 ++
11 files changed, 60 insertions(+), 24 deletions(-)
base-commit: d1153a22117b5c6171bdf24d32b7f6c314887d23
--
2.47.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 1/6] selftests/damon: stop kdamond on error exits of no-op commit test
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
@ 2026-09-14 14:19 ` SJ Park
2026-09-14 14:19 ` [PATCH 2/6] selftests/damon: ignore test-generated damon_dump_output SJ Park
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:19 UTC (permalink / raw)
To: Andrew Morton
Cc: Zenghui Yu (Huawei),
SJ Park, Sang-Heon Jeon, Shuah Khan, damon, linux-kernel,
linux-kselftest, linux-mm
From: "Zenghui Yu (Huawei)" <zenghui.yu@linux.dev>
The sysfs_no_op_commit_break test starts a kdamond via sysfs, but its error
paths (e.g., drgn not installed) exit without stopping it. The leaked
kdamond then makes subsequent tests, e.g. lru_sort.sh and reclaim.sh, skip
with "Another kdamond is running".
Wrap the post-start logic in try-finally so that kdamonds.stop() is
executed on every exit path.
Fixes: 10725cd2b09a ("selftests/damon: test no-op commit broke DAMON status")
Assisted-by: GLM-5.3 OpenCode
Signed-off-by: Zenghui Yu (Huawei) <zenghui.yu@linux.dev>
Reviewed-by: SJ Park <sj@kernel.org>
Signed-off-by: SJ Park <sj@kernel.org>
---
Changes from v1
- v1: https://lore.kernel.org/20260907123455.67246-1-zenghui.yu@linux.dev
- Collect R-b: from SJ.
- Rebase to latest mm-new.
.../damon/sysfs_no_op_commit_break.py | 35 ++++++++++---------
1 file changed, 18 insertions(+), 17 deletions(-)
diff --git a/tools/testing/selftests/damon/sysfs_no_op_commit_break.py b/tools/testing/selftests/damon/sysfs_no_op_commit_break.py
index 2c65cffe6b545..81774ddc55ac4 100755
--- a/tools/testing/selftests/damon/sysfs_no_op_commit_break.py
+++ b/tools/testing/selftests/damon/sysfs_no_op_commit_break.py
@@ -47,26 +47,27 @@ def main():
print('kdamond start failed: %s' % err)
exit(1)
- before_commit_status, err = \
- dump_damon_status_dict(kdamonds.kdamonds[0].pid)
- if err is not None:
- print('before-commit status dump failed: %s' % err)
- exit(1)
+ try:
+ before_commit_status, err = \
+ dump_damon_status_dict(kdamonds.kdamonds[0].pid)
+ if err is not None:
+ print('before-commit status dump failed: %s' % err)
+ exit(1)
- kdamonds.kdamonds[0].commit()
+ kdamonds.kdamonds[0].commit()
- after_commit_status, err = \
- dump_damon_status_dict(kdamonds.kdamonds[0].pid)
- if err is not None:
- print('after-commit status dump failed: %s' % err)
- exit(1)
-
- if before_commit_status != after_commit_status:
- print(f'before: {json.dumps(before_commit_status, indent=2)}')
- print(f'after: {json.dumps(after_commit_status, indent=2)}')
- exit(1)
+ after_commit_status, err = \
+ dump_damon_status_dict(kdamonds.kdamonds[0].pid)
+ if err is not None:
+ print('after-commit status dump failed: %s' % err)
+ exit(1)
- kdamonds.stop()
+ if before_commit_status != after_commit_status:
+ print(f'before: {json.dumps(before_commit_status, indent=2)}')
+ print(f'after: {json.dumps(after_commit_status, indent=2)}')
+ exit(1)
+ finally:
+ kdamonds.stop()
if __name__ == '__main__':
main()
--
2.47.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 2/6] selftests/damon: ignore test-generated damon_dump_output
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
2026-09-14 14:19 ` [PATCH 1/6] selftests/damon: stop kdamond on error exits of no-op commit test SJ Park
@ 2026-09-14 14:19 ` SJ Park
2026-09-14 14:19 ` [PATCH 3/6] selftests/damon: add script dir to sys.path for PYTHONSAFEPATH compatibility SJ Park
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:19 UTC (permalink / raw)
To: Andrew Morton
Cc: Zenghui Yu (Huawei),
SJ Park, Shuah Khan, damon, linux-kernel, linux-kselftest,
linux-mm
From: "Zenghui Yu (Huawei)" <zenghui.yu@linux.dev>
sysfs.py and sysfs_no_op_commit_break.py dump the DAMON status collected
via drgn_dump_damon_status.py into a damon_dump_output file in the working
directory. Ignore it so that running the tests in-tree does not pollute
git status.
Signed-off-by: Zenghui Yu (Huawei) <zenghui.yu@linux.dev>
Reviewed-by: SJ Park <sj@kernel.org>
Signed-off-by: SJ Park <sj@kernel.org>
---
Changes from v1
- v1: https://lore.kernel.org/20260908162716.85648-1-zenghui.yu@linux.dev
- Collect R-b: from SJ.
- Rebase to latest mm-new.
tools/testing/selftests/damon/.gitignore | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/testing/selftests/damon/.gitignore b/tools/testing/selftests/damon/.gitignore
index 2f0297657c816..226bd7c4e0728 100644
--- a/tools/testing/selftests/damon/.gitignore
+++ b/tools/testing/selftests/damon/.gitignore
@@ -1,3 +1,4 @@
# SPDX-License-Identifier: GPL-2.0-only
access_memory
access_memory_even
+damon_dump_output
--
2.47.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 3/6] selftests/damon: add script dir to sys.path for PYTHONSAFEPATH compatibility
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
2026-09-14 14:19 ` [PATCH 1/6] selftests/damon: stop kdamond on error exits of no-op commit test SJ Park
2026-09-14 14:19 ` [PATCH 2/6] selftests/damon: ignore test-generated damon_dump_output SJ Park
@ 2026-09-14 14:19 ` SJ Park
2026-09-14 14:19 ` [PATCH 4/6] mm/damon/tests/core-kunit: improve nr_samples_per_aggr test isolation SJ Park
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:19 UTC (permalink / raw)
To: Andrew Morton
Cc: Eva Kurchatova, SJ Park, Shuah Khan, damon, linux-kernel,
linux-kselftest, linux-mm
From: Eva Kurchatova <eva.kurchatova@virtuozzo.com>
Running these tests under Python's safe path mode, either with -P on the
interpreter command line or with PYTHONSAFEPATH set in the environment,
stops the script's own directory being prepended to sys.path. Some
distributions (RHEL, for example) build the tests with -P in the shebang.
This breaks all 7 DAMON Python selftests that import the _damon_sysfs
helper module located in the same directory:
ModuleNotFoundError: No module named '_damon_sysfs'
Fix this by explicitly adding the script's directory to sys.path before
importing _damon_sysfs, following the same pattern used in commit
c3b3eb565bd7 ("tools: ynl: add script dir to sys.path") which fixed the
identical issue for the YNL tools.
Signed-off-by: Eva Kurchatova <eva.kurchatova@virtuozzo.com>
Reviewed-by: SJ Park <sj@kernel.org>
Signed-off-by: SJ Park <sj@kernel.org>
---
Changes from v1
- v1: https://lore.kernel.org/20260908214238.2680324-1-eva.kurchatova@virtuozzo.com
- Collect R-b: from SJ.
- Rebase to latest mm-new.
tools/testing/selftests/damon/damon_nr_regions.py | 3 +++
tools/testing/selftests/damon/damos_apply_interval.py | 3 +++
tools/testing/selftests/damon/damos_quota.py | 3 +++
tools/testing/selftests/damon/damos_quota_goal.py | 3 +++
tools/testing/selftests/damon/damos_tried_regions.py | 3 +++
.../selftests/damon/sysfs_update_schemes_tried_regions_hang.py | 3 +++
.../damon/sysfs_update_schemes_tried_regions_wss_estimation.py | 3 +++
7 files changed, 21 insertions(+)
diff --git a/tools/testing/selftests/damon/damon_nr_regions.py b/tools/testing/selftests/damon/damon_nr_regions.py
index 58f3291fed12a..e55239813c654 100755
--- a/tools/testing/selftests/damon/damon_nr_regions.py
+++ b/tools/testing/selftests/damon/damon_nr_regions.py
@@ -1,9 +1,12 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
+import os
import subprocess
+import sys
import time
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import _damon_sysfs
def test_nr_regions(real_nr_regions, min_nr_regions, max_nr_regions):
diff --git a/tools/testing/selftests/damon/damos_apply_interval.py b/tools/testing/selftests/damon/damos_apply_interval.py
index 0f2f36584e48c..0bf7768b2006a 100755
--- a/tools/testing/selftests/damon/damos_apply_interval.py
+++ b/tools/testing/selftests/damon/damos_apply_interval.py
@@ -1,9 +1,12 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
+import os
import subprocess
+import sys
import time
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import _damon_sysfs
def main():
diff --git a/tools/testing/selftests/damon/damos_quota.py b/tools/testing/selftests/damon/damos_quota.py
index 57c4937aaed28..879115a499bf8 100755
--- a/tools/testing/selftests/damon/damos_quota.py
+++ b/tools/testing/selftests/damon/damos_quota.py
@@ -1,9 +1,12 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
+import os
import subprocess
+import sys
import time
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import _damon_sysfs
def main():
diff --git a/tools/testing/selftests/damon/damos_quota_goal.py b/tools/testing/selftests/damon/damos_quota_goal.py
index 661e4ba4765ae..fed033a0afdf9 100755
--- a/tools/testing/selftests/damon/damos_quota_goal.py
+++ b/tools/testing/selftests/damon/damos_quota_goal.py
@@ -1,9 +1,12 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
+import os
import subprocess
+import sys
import time
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import _damon_sysfs
def main():
diff --git a/tools/testing/selftests/damon/damos_tried_regions.py b/tools/testing/selftests/damon/damos_tried_regions.py
index d6472e6a6e082..6941f87c10b1c 100755
--- a/tools/testing/selftests/damon/damos_tried_regions.py
+++ b/tools/testing/selftests/damon/damos_tried_regions.py
@@ -1,9 +1,12 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
+import os
import subprocess
+import sys
import time
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import _damon_sysfs
def main():
diff --git a/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_hang.py b/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_hang.py
index 28c887a0108fd..625761c243b58 100755
--- a/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_hang.py
+++ b/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_hang.py
@@ -1,9 +1,12 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
+import os
import subprocess
+import sys
import time
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import _damon_sysfs
def main():
diff --git a/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_wss_estimation.py b/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_wss_estimation.py
index 16fdc6e7fc566..36e7ae5f826d8 100755
--- a/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_wss_estimation.py
+++ b/tools/testing/selftests/damon/sysfs_update_schemes_tried_regions_wss_estimation.py
@@ -1,9 +1,12 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
+import os
import subprocess
+import sys
import time
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import _damon_sysfs
def pass_wss_estimation(sz_region):
--
2.47.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 4/6] mm/damon/tests/core-kunit: improve nr_samples_per_aggr test isolation
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
` (2 preceding siblings ...)
2026-09-14 14:19 ` [PATCH 3/6] selftests/damon: add script dir to sys.path for PYTHONSAFEPATH compatibility SJ Park
@ 2026-09-14 14:19 ` SJ Park
2026-09-14 14:19 ` [PATCH 5/6] Docs/mm/damon/design: clarify when qt_exceeds increases SJ Park
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:19 UTC (permalink / raw)
To: Andrew Morton
Cc: Kunwu Chan, Brendan Higgins, David Gow, SJ Park, damon,
kunit-dev, linux-kernel, linux-kselftest, linux-mm, Lian Wang
From: Kunwu Chan <kunwu.chan@gmail.com>
Test the zero sample interval case with a non-zero aggregation
interval, and keep the zero/zero case to cover the zero-result
fallback.
Also make the overflow case use an explicit sample interval so that
it does not depend on the zero sample interval fallback.
Signed-off-by: Kunwu Chan <kunwu.chan@gmail.com>
Reviewed-by: Lian Wang <lianux.mm@gmail.com>
Reviewed-by: SJ Park <sj@kernel.org>
Signed-off-by: SJ Park <sj@kernel.org>
---
Changes from v2
- v2: https://lore.kernel.org/20260909070711.2448346-1-kunwu.chan@gmail.com
- Collect R-b: from SJ.
- Rebase to latest mm-new.
Changes from v1
- v1: https://lore.kernel.org/damon/20260908063635.2208922-1-kunwu.chan@gmail.com/
- Use 0/0 for the zero-result case, consistent with damon_set_attrs().
- Update commit msg and add Reviewed-by tag.
mm/damon/tests/core-kunit.h | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/mm/damon/tests/core-kunit.h b/mm/damon/tests/core-kunit.h
index c01e6a75cadc1..a47a5cdf285c8 100644
--- a/mm/damon/tests/core-kunit.h
+++ b/mm/damon/tests/core-kunit.h
@@ -627,12 +627,20 @@ static void damon_test_set_regions(struct kunit *test)
static void damon_test_nr_samples_per_aggr(struct kunit *test)
{
- struct damon_attrs attrs = {
+ struct damon_attrs attrs;
+
+ /* Zero sample interval is treated as one. */
+ attrs = (struct damon_attrs){
.sample_interval = 0,
- .aggr_interval = 0,
+ .aggr_interval = 5000,
};
+ KUNIT_EXPECT_EQ(test, damon_nr_samples_per_aggr(&attrs), 5000);
- /* Zero aggregation interval doesn't cause division by zero */
+ /* Zero sample and aggregation intervals cover the zero-result fallback. */
+ attrs = (struct damon_attrs){
+ .sample_interval = 0,
+ .aggr_interval = 0,
+ };
KUNIT_EXPECT_EQ(test, damon_nr_samples_per_aggr(&attrs), 1);
/*
@@ -640,7 +648,10 @@ static void damon_test_nr_samples_per_aggr(struct kunit *test)
* overflow
*/
if (ULONG_MAX > UINT_MAX) {
- attrs.aggr_interval = (unsigned long)UINT_MAX + 1;
+ attrs = (struct damon_attrs){
+ .sample_interval = 1,
+ .aggr_interval = (unsigned long)UINT_MAX + 1,
+ };
KUNIT_EXPECT_EQ(test, damon_nr_samples_per_aggr(&attrs),
UINT_MAX);
}
--
2.47.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 5/6] Docs/mm/damon/design: clarify when qt_exceeds increases
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
` (3 preceding siblings ...)
2026-09-14 14:19 ` [PATCH 4/6] mm/damon/tests/core-kunit: improve nr_samples_per_aggr test isolation SJ Park
@ 2026-09-14 14:19 ` SJ Park
2026-09-14 14:19 ` [PATCH 6/6] Docs/mm/damon/design: fix typos in temporal auto-tuning algorithm section SJ Park
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:19 UTC (permalink / raw)
To: Andrew Morton
Cc: Liew Rui Yan, Liam R. Howlett, David Hildenbrand,
Jonathan Corbet, Lorenzo Stoakes, Michal Hocko, Mike Rapoport,
Randy Dunlap, SJ Park, Shuah Khan, Suren Baghdasaryan,
Vlastimil Babka, damon, linux-doc, linux-kernel, linux-mm
From: Liew Rui Yan <aethernet65535@gmail.com>
qt_exceeds counts how many times a scheme's quota has been exceeded.
When using the temporal auto-tuning algorithm, the effective size quota
becomes zero once the goal is [over-]achieved. In this case, the quotas
are still set, so qt_exceeds keeps increasing once per quota reset
interval while the goal stays achieved.
Clarify this behavior in the design document.
Signed-off-by: Liew Rui Yan <aethernet65535@gmail.com>
Reviewed-by: SJ Park <sj@kernel.org>
Signed-off-by: SJ Park <sj@kernel.org>
---
Changes from v1
- v1: https://lore.kernel.org/20260910112255.157012-1-aethernet65535@gmail.com
- Collect R-b: From SJ.
- Rebase to latest mm-new.
Changes from RFC v1
- RFC v1: https://lore.kernel.org/damon/20260908175105.42558-2-aethernet65535@gmail.com
- Simplify the explanation. Do not provide a complete definition of
qt_exceeds, but rather explain only the increment condition when using
temporal auto-tuning algorithm, simply to prevent users from becoming
confused and being unable to find any explanation.
Documentation/mm/damon/design.rst | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/Documentation/mm/damon/design.rst b/Documentation/mm/damon/design.rst
index cb116a82ff20b..ad09416dfb21a 100644
--- a/Documentation/mm/damon/design.rst
+++ b/Documentation/mm/damon/design.rst
@@ -696,7 +696,9 @@ There are two such tuning algorithms that users can select as they need.
fast as possible, using maximum allowed quota, but only for a temporal short
time. When the quota is under-achieved, this algorithm keeps tuning quota to
a maximum allowed one. Once the quota is [over]-achieved, this sets the
- quota zero. Useful for deterministic control required environments.
+ quota zero. Useful for deterministic control required environments. Note
+ that the zero quota is a valid quota, and therefore ``qt_exceeds`` :ref:`stat
+ <damon_design_damos_stat>` will keep increasing in this case.
The goal can be specified with five parameters, namely ``target_metric``,
``target_value``, ``current_value``, ``nid`` and ``path``. The auto-tuning
--
2.47.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 6/6] Docs/mm/damon/design: fix typos in temporal auto-tuning algorithm section
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
` (4 preceding siblings ...)
2026-09-14 14:19 ` [PATCH 5/6] Docs/mm/damon/design: clarify when qt_exceeds increases SJ Park
@ 2026-09-14 14:19 ` SJ Park
2026-09-14 14:50 ` [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
2026-09-15 2:00 ` Andrew Morton
7 siblings, 0 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:19 UTC (permalink / raw)
To: Andrew Morton
Cc: Liew Rui Yan, Liam R. Howlett, David Hildenbrand,
Jonathan Corbet, Lorenzo Stoakes, Michal Hocko, Mike Rapoport,
Randy Dunlap, SJ Park, Shuah Khan, Suren Baghdasaryan,
Vlastimil Babka, damon, linux-doc, linux-kernel, linux-mm
From: Liew Rui Yan <aethernet65535@gmail.com>
Correct incorrect references of "quota" to "goal" in the temporal
auto-tuning algorithm description and fix the square bracket formatting.
Signed-off-by: Liew Rui Yan <aethernet65535@gmail.com>
Reviewed-by: SJ Park <sj@kernel.org>
Signed-off-by: SJ Park <sj@kernel.org>
---
Changes from v1
- v1: https://lore.kernel.org/20260911093314.156875-1-aethernet65535@gmail.com
- Collect R-b: from SJ.
- Rebase to latest mm-new.
Documentation/mm/damon/design.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/mm/damon/design.rst b/Documentation/mm/damon/design.rst
index ad09416dfb21a..707170bcd1b33 100644
--- a/Documentation/mm/damon/design.rst
+++ b/Documentation/mm/damon/design.rst
@@ -694,8 +694,8 @@ There are two such tuning algorithms that users can select as they need.
This is the default selection. If unsure, use this.
- ``temporal``: More straightforward algorithm. Tries to achieve the goal as
fast as possible, using maximum allowed quota, but only for a temporal short
- time. When the quota is under-achieved, this algorithm keeps tuning quota to
- a maximum allowed one. Once the quota is [over]-achieved, this sets the
+ time. When the goal is under-achieved, this algorithm keeps tuning quota to
+ a maximum allowed one. Once the goal is [over-]achieved, this sets the
quota zero. Useful for deterministic control required environments. Note
that the zero quota is a valid quota, and therefore ``qt_exceeds`` :ref:`stat
<damon_design_damos_stat>` will keep increasing in this case.
--
2.47.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 0/6] mm/damon: misc improvements in tests and documents
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
` (5 preceding siblings ...)
2026-09-14 14:19 ` [PATCH 6/6] Docs/mm/damon/design: fix typos in temporal auto-tuning algorithm section SJ Park
@ 2026-09-14 14:50 ` SJ Park
2026-09-15 2:00 ` Andrew Morton
7 siblings, 0 replies; 9+ messages in thread
From: SJ Park @ 2026-09-14 14:50 UTC (permalink / raw)
To: SJ Park
Cc: Andrew Morton, Liam R. Howlett, Brendan Higgins, David Gow,
David Hildenbrand, Jonathan Corbet, Lorenzo Stoakes,
Michal Hocko, Mike Rapoport, Randy Dunlap, Sang-Heon Jeon,
Shuah Khan, Shuah Khan, Suren Baghdasaryan, Vlastimil Babka,
damon, kunit-dev, linux-doc, linux-kernel, linux-kselftest,
linux-mm
On Mon, 14 Sep 2026 07:19:45 -0700 SJ Park <sj@kernel.org> wrote:
> Add various improvements to DAMON tests and documents.
Sashiko found no blocker for this series. Sashiko send its findings to damon@
mailing list [1], and I reply those if anything needs to be clarified. Please
refer to those for details.
[1] https://lore.kernel.org/damon/
Thanks,
SJ
[...]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 0/6] mm/damon: misc improvements in tests and documents
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
` (6 preceding siblings ...)
2026-09-14 14:50 ` [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
@ 2026-09-15 2:00 ` Andrew Morton
7 siblings, 0 replies; 9+ messages in thread
From: Andrew Morton @ 2026-09-15 2:00 UTC (permalink / raw)
To: SJ Park
Cc: Liam R. Howlett, Brendan Higgins, David Gow, David Hildenbrand,
Jonathan Corbet, Lorenzo Stoakes, Michal Hocko, Mike Rapoport,
Randy Dunlap, Sang-Heon Jeon, Shuah Khan, Shuah Khan,
Suren Baghdasaryan, Vlastimil Babka, damon, kunit-dev, linux-doc,
linux-kernel, linux-kselftest, linux-mm
On Mon, 14 Sep 2026 07:19:45 -0700 SJ Park <sj@kernel.org> wrote:
> Add various improvements to DAMON tests and documents.
>
> Patch 1 and 2 from Zenghui Yu (Huawei) let DAMON selftest to clean up
> its state and output after running the tests. Patch 3 from Eva
> Kurchatova makes a few selftest be able to run with Python's safe path
> mode. Patch 4 from Kunwu Chan improves coverage of DAMON kunit tests.
> Finally, patches 5 and 6 from Liew Rui Yan clarify and fix typos on
> documents for DAMOS quota behaviors.
>
> Below are notes that can be removed in the final commit message.
>
> This is a batched repost of DAMON patches that were individually posted.
> Please refer to each patch for changelog.
All queued, thanks,
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2026-09-15 2:00 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-14 14:19 [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
2026-09-14 14:19 ` [PATCH 1/6] selftests/damon: stop kdamond on error exits of no-op commit test SJ Park
2026-09-14 14:19 ` [PATCH 2/6] selftests/damon: ignore test-generated damon_dump_output SJ Park
2026-09-14 14:19 ` [PATCH 3/6] selftests/damon: add script dir to sys.path for PYTHONSAFEPATH compatibility SJ Park
2026-09-14 14:19 ` [PATCH 4/6] mm/damon/tests/core-kunit: improve nr_samples_per_aggr test isolation SJ Park
2026-09-14 14:19 ` [PATCH 5/6] Docs/mm/damon/design: clarify when qt_exceeds increases SJ Park
2026-09-14 14:19 ` [PATCH 6/6] Docs/mm/damon/design: fix typos in temporal auto-tuning algorithm section SJ Park
2026-09-14 14:50 ` [PATCH 0/6] mm/damon: misc improvements in tests and documents SJ Park
2026-09-15 2:00 ` Andrew Morton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®