mm/damon: remove damon_operations->reset_aggregated
authorSeongJae Park <sj@kernel.org>
Thu, 6 Mar 2025 17:59:08 +0000 (09:59 -0800)
committerAndrew Morton <akpm@linux-foundation.org>
Tue, 18 Mar 2025 05:06:57 +0000 (22:06 -0700)
The operations layer hook was introduced to let operations set do any
aggregation data reset if needed.  But it is not really be used now.
Remove it.

Link: https://lkml.kernel.org/r/20250306175908.66300-14-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/damon.h
mm/damon/core.c
mm/damon/paddr.c
mm/damon/vaddr.c

index be7b281..3db4f77 100644 (file)
@@ -542,7 +542,6 @@ enum damon_ops_id {
  * @update:                    Update operations-related data structures.
  * @prepare_access_checks:     Prepare next access check of target regions.
  * @check_accesses:            Check the accesses to target regions.
- * @reset_aggregated:          Reset aggregated accesses monitoring results.
  * @get_scheme_score:          Get the score of a region for a scheme.
  * @apply_scheme:              Apply a DAMON-based operation scheme.
  * @target_valid:              Determine if the target is valid.
@@ -554,8 +553,7 @@ enum damon_ops_id {
  * (&damon_ctx.kdamond) calls @init and @prepare_access_checks before starting
  * the monitoring, @update after each &damon_attrs.ops_update_interval, and
  * @check_accesses, @target_valid and @prepare_access_checks after each
- * &damon_attrs.sample_interval.  Finally, @reset_aggregated is called after
- * each &damon_attrs.aggr_interval.
+ * &damon_attrs.sample_interval.
  *
  * Each &struct damon_operations instance having valid @id can be registered
  * via damon_register_ops() and selected by damon_select_ops() later.
@@ -570,8 +568,6 @@ enum damon_ops_id {
  * last preparation and update the number of observed accesses of each region.
  * It should also return max number of observed accesses that made as a result
  * of its update.  The value will be used for regions adjustment threshold.
- * @reset_aggregated should reset the access monitoring results that aggregated
- * by @check_accesses.
  * @get_scheme_score should return the priority score of a region for a scheme
  * as an integer in [0, &DAMOS_MAX_SCORE].
  * @apply_scheme is called from @kdamond when a region for user provided
@@ -589,7 +585,6 @@ struct damon_operations {
        void (*update)(struct damon_ctx *context);
        void (*prepare_access_checks)(struct damon_ctx *context);
        unsigned int (*check_accesses)(struct damon_ctx *context);
-       void (*reset_aggregated)(struct damon_ctx *context);
        int (*get_scheme_score)(struct damon_ctx *context,
                        struct damon_target *t, struct damon_region *r,
                        struct damos *scheme);
index 1777168..fc1eba3 100644 (file)
@@ -2490,8 +2490,6 @@ static int kdamond_fn(void *data)
 
                        kdamond_reset_aggregated(ctx);
                        kdamond_split_regions(ctx);
-                       if (ctx->ops.reset_aggregated)
-                               ctx->ops.reset_aggregated(ctx);
                }
 
                if (ctx->passed_sample_intervals >= next_ops_update_sis) {
index fba8b3c..b08847e 100644 (file)
@@ -621,7 +621,6 @@ static int __init damon_pa_initcall(void)
                .update = NULL,
                .prepare_access_checks = damon_pa_prepare_access_checks,
                .check_accesses = damon_pa_check_accesses,
-               .reset_aggregated = NULL,
                .target_valid = NULL,
                .cleanup = NULL,
                .apply_scheme = damon_pa_apply_scheme,
index a6174f7..e6d9910 100644 (file)
@@ -710,7 +710,6 @@ static int __init damon_va_initcall(void)
                .update = damon_va_update,
                .prepare_access_checks = damon_va_prepare_access_checks,
                .check_accesses = damon_va_check_accesses,
-               .reset_aggregated = NULL,
                .target_valid = damon_va_target_valid,
                .cleanup = NULL,
                .apply_scheme = damon_va_apply_scheme,