Commit 304b9584 authored by SeongJae Park's avatar SeongJae Park Committed by Andrew Morton

mm/damon/core: replace per-quota regions priority histogram buffer usage with per-context one

Replace the usage of per-quota region priorities histogram buffer with the
per-context one.  After this change, the per-quota histogram is not used
by anyone, and hence it is ready to be removed.

Link: https://lkml.kernel.org/r/20240826042323.87025-3-sj@kernel.orgSigned-off-by: default avatarSeongJae Park <sj@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent b7315fbb
...@@ -1582,13 +1582,16 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s) ...@@ -1582,13 +1582,16 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s)
return; return;
/* Fill up the score histogram */ /* Fill up the score histogram */
memset(quota->histogram, 0, sizeof(quota->histogram)); memset(c->regions_score_histogram, 0,
sizeof(*c->regions_score_histogram) *
(DAMOS_MAX_SCORE + 1));
damon_for_each_target(t, c) { damon_for_each_target(t, c) {
damon_for_each_region(r, t) { damon_for_each_region(r, t) {
if (!__damos_valid_target(r, s)) if (!__damos_valid_target(r, s))
continue; continue;
score = c->ops.get_scheme_score(c, t, r, s); score = c->ops.get_scheme_score(c, t, r, s);
quota->histogram[score] += damon_sz_region(r); c->regions_score_histogram[score] +=
damon_sz_region(r);
if (score > max_score) if (score > max_score)
max_score = score; max_score = score;
} }
...@@ -1596,7 +1599,7 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s) ...@@ -1596,7 +1599,7 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s)
/* Set the min score limit */ /* Set the min score limit */
for (cumulated_sz = 0, score = max_score; ; score--) { for (cumulated_sz = 0, score = max_score; ; score--) {
cumulated_sz += quota->histogram[score]; cumulated_sz += c->regions_score_histogram[score];
if (cumulated_sz >= quota->esz || !score) if (cumulated_sz >= quota->esz || !score)
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment