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.org Signed-off-by: SeongJae Park <sj@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
committed by
Andrew Morton
parent
b7315fbb64
commit
304b95847f
+6
-3
@@ -1582,13 +1582,16 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s)
|
||||
return;
|
||||
|
||||
/* 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_region(r, t) {
|
||||
if (!__damos_valid_target(r, s))
|
||||
continue;
|
||||
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)
|
||||
max_score = score;
|
||||
}
|
||||
@@ -1596,7 +1599,7 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s)
|
||||
|
||||
/* Set the min score limit */
|
||||
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)
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user