mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 01:55:51 +02:00
mm/damon/core: do data attributes monitoring
Implement the data attributes monitoring execution. Update kdamond to invoke the probes application callback, and reset the aggregated number of per-region per-probe positive samples for every aggregation interval. Link: https://lore.kernel.org/20260518234119.97569-8-sj@kernel.org Signed-off-by: SeongJae Park <sj@kernel.org> Cc: David Hildenbrand <david@kernel.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Liam R. Howlett <liam@infradead.org> Cc: Lorenzo Stoakes <ljs@kernel.org> Cc: "Masami Hiramatsu (Google)" <mhiramat@kernel.org> Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Cc: Michal Hocko <mhocko@suse.com> Cc: Mike Rapoport <rppt@kernel.org> Cc: Shuah Khan <shuah@kernel.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Suren Baghdasaryan <surenb@google.com> Cc: Vlastimil Babka <vbabka@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
1a9e847589
commit
9b1f8c8d01
|
|
@ -1910,10 +1910,14 @@ static void kdamond_reset_aggregated(struct damon_ctx *c)
|
|||
struct damon_region *r;
|
||||
|
||||
damon_for_each_region(r, t) {
|
||||
int i;
|
||||
|
||||
trace_damon_aggregated(ti, r, damon_nr_regions(t));
|
||||
damon_warn_fix_nr_accesses_corruption(r);
|
||||
r->last_nr_accesses = r->nr_accesses;
|
||||
r->nr_accesses = 0;
|
||||
for (i = 0; i < DAMON_MAX_PROBES; i++)
|
||||
r->probe_hits[i] = 0;
|
||||
damon_verify_reset_aggregated(r, c);
|
||||
}
|
||||
ti++;
|
||||
|
|
@ -3407,6 +3411,8 @@ static int kdamond_fn(void *data)
|
|||
|
||||
if (ctx->ops.check_accesses)
|
||||
max_nr_accesses = ctx->ops.check_accesses(ctx);
|
||||
if (ctx->ops.apply_probes)
|
||||
ctx->ops.apply_probes(ctx);
|
||||
|
||||
if (time_after_eq(ctx->passed_sample_intervals,
|
||||
next_aggregation_sis)) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user