mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-09-22 09:34:56 +02:00
mm/damon/core: make charge_addr_from aware of end-address exclusivity
commit5a2d162e22upstream. DAMON region end address is exclusive one, but charge_addr_from is assigned assuming the end address is inclusive. As a result, DAMOS action to next up to min_region_sz memory can be skipped. This is quite negligible user impact. But, the bug is a bug that can be very simply fixed. Fix the wrong assignment to respect the exclusiveness of the address. The issue was discovered [1] by Sashiko. Link: https://lore.kernel.org/20260428042942.118230-1-sj@kernel.org Link: https://lore.kernel.org/20260428032324.115663-1-sj@kernel.org [1] Fixes:50585192bc("mm/damon/schemes: skip already charged targets and regions") Signed-off-by: SeongJae Park <sj@kernel.org> Cc: <stable@vger.kernel.org> # 5.16.x Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
700c225d82
commit
c31067bf5c
+1
-1
@@ -1003,7 +1003,7 @@ static void damos_apply_scheme(struct damon_ctx *c, struct damon_target *t,
|
||||
quota->charged_sz += sz;
|
||||
if (quota->esz && quota->charged_sz >= quota->esz) {
|
||||
quota->charge_target_from = t;
|
||||
quota->charge_addr_from = r->ar.end + 1;
|
||||
quota->charge_addr_from = r->ar.end;
|
||||
}
|
||||
}
|
||||
if (s->action != DAMOS_STAT)
|
||||
|
||||
Reference in New Issue
Block a user