mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [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®