On Tue, Oct 20, 2020 at 2:02 AM SeongJae Park <sjpark@xxxxxxxxxx> wrote: > > From: SeongJae Park <sjpark@xxxxxxxxx> > > The monitoring target address range can be dynamically changed. For > example, virtual memory could be dynamically mapped and unmapped. > Physical memory could be hot-plugged. > > As the changes could be quite frequent in some cases, Which cases? Usually address space changes are very infrequent for performance reasons. > DAMON checks the > dynamic memory mapping changes and applies it to the abstracted target > area only for each of a user-specified time interval, ``regions update > interval``. > > Signed-off-by: SeongJae Park <sjpark@xxxxxxxxx> > Reviewed-by: Leonard Foerster <foersleo@xxxxxxxxx> [snip] > * Check whether current monitoring should be stopped > * > @@ -612,6 +625,11 @@ static int kdamond_fn(void *data) > kdamond_reset_aggregated(ctx); > kdamond_split_regions(ctx); > } > + > + if (kdamond_need_update_regions(ctx)) { > + kdamond_call_prmt(ctx, update_target_regions); The implementation of update_target_regions callback should be part of this patch. > + sz_limit = damon_region_sz_limit(ctx); > + } > } > damon_for_each_target(t, ctx) { > damon_for_each_region_safe(r, next, t) > -- > 2.17.1 >