diff --git a/mm/damon/core.c b/mm/damon/core.c index be5942435d78..ff2c6bb30621 100644 --- a/mm/damon/core.c +++ b/mm/damon/core.c @@ -2261,6 +2261,8 @@ static void damon_merge_regions_of(struct damon_target *t, unsigned int thres, damon_for_each_region_safe(r, next, t) { if (abs(r->nr_accesses - r->last_nr_accesses) > thres) r->age = 0; + else if ((r->nr_accesses == 0) != (r->last_nr_accesses == 0)) + r->age = 0; else r->age++;