The patch titled Subject: mm/damon/core: skip updating nr_accesses_bp for each aggregation interval has been added to the -mm mm-unstable branch. Its filename is mm-damon-core-skip-updating-nr_accesses_bp-for-each-aggregation-interval.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-skip-updating-nr_accesses_bp-for-each-aggregation-interval.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: skip updating nr_accesses_bp for each aggregation interval Date: Fri, 15 Sep 2023 02:52:50 +0000 damon_merge_regions_of(), which is called for each aggregation interval, updates nr_accesses_bp to nr_accesses * 10000. However, nr_accesses_bp is updated for each sampling interval via damon_moving_sum() using the aggregation interval as the moving time window. And by the definition of the algorithm, the value becomes same to discrete-window based sum for each time window-aligned time. Hence, nr_accesses_bp will be same to nr_accesses * 10000 for each aggregation interval without explicit update. Remove the unnecessary update of nr_accesses_bp in damon_merge_regions_of(). Link: https://lkml.kernel.org/r/20230915025251.72816-8-sj@xxxxxxxxxx Signed-off-by: SeongJae Park <sj@xxxxxxxxxx> Cc: Brendan Higgins <brendanhiggins@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/damon/core.c | 2 -- 1 file changed, 2 deletions(-) --- a/mm/damon/core.c~mm-damon-core-skip-updating-nr_accesses_bp-for-each-aggregation-interval +++ a/mm/damon/core.c @@ -1141,8 +1141,6 @@ static void damon_merge_regions_of(struc else r->age++; - r->nr_accesses_bp = r->nr_accesses * 10000; - if (prev && prev->ar.end == r->ar.start && abs(prev->nr_accesses - r->nr_accesses) <= thres && damon_sz_region(prev) + damon_sz_region(r) <= sz_limit) _ Patches currently in -mm which might be from sj@xxxxxxxxxx are docs-admin-guide-mm-damon-usage-fixup-missed-ref-keyword.patch docs-admin-guide-mm-damon-usage-place-debugfs-usage-at-the-bottom.patch docs-admin-guide-mm-damon-usage-move-debugfs-intro-to-the-bottom-of-the-section.patch docs-mm-damon-design-explicitly-introduce-nr_accesses.patch docs-admin-guide-mm-damon-usage-explain-the-format-of-damon_aggregate-tracepoint.patch docs-mm-damon-design-add-a-section-for-kdamond-and-damon-context.patch docs-admin-guide-mm-damon-usage-link-design-doc-for-details-of-kdamond-and-context.patch mm-damon-core-fix-a-comment-about-damon_set_attrs-call-timings.patch mm-damon-core-add-more-comments-for-nr_accesses.patch mm-damon-core-remove-duplicated-comment-for-watermarks-based-deactivation.patch mm-damon-core-remove-struct-target-parameter-from-damon_aggregated-tracepoint.patch mm-damon-core-add-a-tracepoint-for-damos-apply-target-regions.patch docs-admin-guide-mm-damon-usage-document-damos_before_apply-tracepoint.patch mm-damon-core-use-number-of-passed-access-sampling-as-a-timer.patch mm-damon-core-define-and-use-a-dedicated-function-for-region-access-rate-update.patch mm-damon-vaddr-call-damon_update_region_access_rate-always.patch mm-damon-core-implement-a-pseudo-moving-sum-function.patch mm-damon-core-test-add-a-unit-test-for-damon_moving_sum.patch mm-damon-core-introduce-nr_accesses_bp.patch mm-damon-core-use-pseudo-moving-sum-for-nr_accesses_bp.patch mm-damon-core-skip-updating-nr_accesses_bp-for-each-aggregation-interval.patch mm-damon-core-mark-damon_moving_sum-as-a-static-function.patch