The patch titled Subject: mm/damon/core: replace per-quota regions priority histogram buffer usage with per-context one has been added to the -mm mm-unstable branch. Its filename is mm-damon-core-replace-per-quota-regions-priority-histogram-buffer-usage-with-per-context-one.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/mm-damon-core-replace-per-quota-regions-priority-histogram-buffer-usage-with-per-context-one.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: SeongJae Park <sj@xxxxxxxxxx> Subject: mm/damon/core: replace per-quota regions priority histogram buffer usage with per-context one Date: Sun, 25 Aug 2024 21:23:21 -0700 Replace the usage of per-quota region priorities histogram buffer with the per-context one. After this change, the per-quota histogram is not used by anyone, and hence it is ready to be removed. Link: https://lkml.kernel.org/r/20240826042323.87025-3-sj@xxxxxxxxxx Signed-off-by: SeongJae Park <sj@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/damon/core.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) --- a/mm/damon/core.c~mm-damon-core-replace-per-quota-regions-priority-histogram-buffer-usage-with-per-context-one +++ a/mm/damon/core.c @@ -1582,13 +1582,16 @@ static void damos_adjust_quota(struct da return; /* Fill up the score histogram */ - memset(quota->histogram, 0, sizeof(quota->histogram)); + memset(c->regions_score_histogram, 0, + sizeof(*c->regions_score_histogram) * + (DAMOS_MAX_SCORE + 1)); damon_for_each_target(t, c) { damon_for_each_region(r, t) { if (!__damos_valid_target(r, s)) continue; score = c->ops.get_scheme_score(c, t, r, s); - quota->histogram[score] += damon_sz_region(r); + c->regions_score_histogram[score] += + damon_sz_region(r); if (score > max_score) max_score = score; } @@ -1596,7 +1599,7 @@ static void damos_adjust_quota(struct da /* Set the min score limit */ for (cumulated_sz = 0, score = max_score; ; score--) { - cumulated_sz += quota->histogram[score]; + cumulated_sz += c->regions_score_histogram[score]; if (cumulated_sz >= quota->esz || !score) break; } _ Patches currently in -mm which might be from sj@xxxxxxxxxx are selftests-damon-add-access_memory_even-to-gitignore.patch selftests-damon-cleanup-__pycache__-with-make-clean.patch selftests-damon-add-execute-permissions-to-test-scripts.patch mm-damon-core-test-test-only-vaddr-case-on-ops-registration-test.patch mm-damon-core-test-fix-damon_test_ops_registration-for-damon_vaddr-unset-case.patch mm-damon-dbgfs-test-skip-dbgfs_set_targets-test-if-paddr-is-not-registered.patch mm-damon-dbgfs-test-skip-dbgfs_set_init_regions-test-if-paddr-is-not-registered.patch mm-damon-move-kunit-tests-to-tests-subdirectory-with-_kunit-suffix.patch mm-damon-tests-add-kunitconfig-file-for-damon-kunit-tests.patch mm-damon-core-intorduce-per-context-region-priorities-histogram-buffer.patch mm-damon-core-replace-per-quota-regions-priority-histogram-buffer-usage-with-per-context-one.patch mm-damon-core-remove-per-scheme-region-priority-histogram-buffer.patch revert-mm-damon-lru_sort-adjust-local-variable-to-dynamic-allocation.patch