[PATCH] mm/damon/stat: return error if monitoring target region is invalid
From: SeongJae Park
Date: Tue Mar 17 2026 - 01:11:22 EST
On 32bit systems with LPAE, the end address might be overflowed or
truncated, resulting in invalid range (the end address is equal or
smaller than the start address). Return an error for the case.
Signed-off-by: SeongJae Park <sj@xxxxxxxxxx>
---
mm/damon/stat.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/mm/damon/stat.c b/mm/damon/stat.c
index c5af8ad4bcb65..cf2c5a541eeea 100644
--- a/mm/damon/stat.c
+++ b/mm/damon/stat.c
@@ -188,6 +188,8 @@ static int damon_stat_set_monitoring_region(struct damon_target *t,
arg.res.start, addr_unit);
addr_range.end = damon_stat_res_to_core_addr(
arg.res.end + 1, addr_unit);
+ if (addr_range.end <= addr_range.start)
+ return -EINVAL;
return damon_set_regions(t, &addr_range, 1, min_region_sz);
}
--
2.47.3