]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mm/damon: remove damon_callback->after_sampling
authorSeongJae Park <sj@kernel.org>
Thu, 6 Mar 2025 17:59:06 +0000 (09:59 -0800)
committerAndrew Morton <akpm@linux-foundation.org>
Tue, 18 Mar 2025 05:06:56 +0000 (22:06 -0700)
The callback was used by DAMON sysfs interface for reading DAMON internal
data.  But it is no more being used, and damon_call() can do similar works
in a better way.  Remove it.

Link: https://lkml.kernel.org/r/20250306175908.66300-12-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

index 043de2408c654240afa92fdb8526fb1b6c0a82d7..5aa277f4c94873317285b8368c0c89b9208b6663 100644 (file)
@@ -604,7 +604,6 @@ struct damon_operations {
  * struct damon_callback - Monitoring events notification callbacks.
  *
  * @after_wmarks_check:        Called after each schemes' watermarks check.
- * @after_sampling:    Called after each sampling.
  * @after_aggregation: Called after each aggregation.
  * @before_damos_apply:        Called before applying DAMOS action.
  * @before_terminate:  Called before terminating the monitoring.
@@ -617,17 +616,15 @@ struct damon_operations {
  * attributes of the monitoring context while it's deactivated due to the
  * watermarks, this is the good place to do.
  *
- * The monitoring thread calls @after_sampling and @after_aggregation for each
- * of the sampling intervals and aggregation intervals, respectively.
- * Therefore, users can safely access the monitoring results without additional
- * protection.  For the reason, users are recommended to use these callback for
- * the accesses to the results.
+ * The monitoring thread calls @after_aggregation for each of the aggregation
+ * intervals.  Therefore, users can safely access the monitoring results
+ * without additional protection.  For the reason, users are recommended to use
+ * these callback for the accesses to the results.
  *
  * If any callback returns non-zero, monitoring stops.
  */
 struct damon_callback {
        int (*after_wmarks_check)(struct damon_ctx *context);
-       int (*after_sampling)(struct damon_ctx *context);
        int (*after_aggregation)(struct damon_ctx *context);
        int (*before_damos_apply)(struct damon_ctx *context,
                        struct damon_target *target,
index 9175a49985d58fb018d393373f9234b40e1285dc..812b1c70c723063825a3e7c38080afe3e2656b9f 100644 (file)
@@ -2432,9 +2432,6 @@ static int kdamond_fn(void *data)
 
                if (ctx->ops.prepare_access_checks)
                        ctx->ops.prepare_access_checks(ctx);
-               if (ctx->callback.after_sampling &&
-                               ctx->callback.after_sampling(ctx))
-                       break;
 
                kdamond_usleep(sample_interval);
                ctx->passed_sample_intervals++;