diff options
| author | Enze Li <lienze@kylinos.cn> | 2026-01-29 13:08:45 +0300 |
|---|---|---|
| committer | Andrew Morton <akpm@linux-foundation.org> | 2026-02-07 02:47:15 +0300 |
| commit | 9a2791e748e5e658abcf3a4ab7fc76ef02cd66c5 (patch) | |
| tree | 23b50b96b81058d630828871f03ce62e27f36b49 | |
| parent | ad789a85b1633ea84ad8ccf625588d6416877e69 (diff) | |
| download | linux-9a2791e748e5e658abcf3a4ab7fc76ef02cd66c5.tar.xz | |
mm/damon: unify address range representation with damon_addr_range
Currently, DAMON defines two identical structures for representing address
ranges: damon_system_ram_region and damon_addr_range. Both structures
share the same semantic interpretation of a half-open interval [start,
end), where the start address is inclusive and the end address is
exclusive.
This duplication adds unnecessary redundancy and increases maintenance
overhead. This patch replaces all uses of damon_system_ram_region with
the more generic damon_addr_range structure, ensuring a unified type
representation for address ranges within the DAMON subsystem. The change
simplifies the codebase, improves readability, and avoids potential
inconsistencies in future modifications.
Link: https://lkml.kernel.org/r/20260129100845.281734-1-lienze@kylinos.cn
Signed-off-by: Enze Li <lienze@kylinos.cn>
Reviewed-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
| -rw-r--r-- | mm/damon/core.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/mm/damon/core.c b/mm/damon/core.c index 70efbf22a2b4..5e2724a4f285 100644 --- a/mm/damon/core.c +++ b/mm/damon/core.c @@ -2856,20 +2856,9 @@ done: return 0; } -/* - * struct damon_system_ram_region - System RAM resource address region of - * [@start, @end). - * @start: Start address of the region (inclusive). - * @end: End address of the region (exclusive). - */ -struct damon_system_ram_region { - unsigned long start; - unsigned long end; -}; - static int walk_system_ram(struct resource *res, void *arg) { - struct damon_system_ram_region *a = arg; + struct damon_addr_range *a = arg; if (a->end - a->start < resource_size(res)) { a->start = res->start; @@ -2886,7 +2875,7 @@ static bool damon_find_biggest_system_ram(unsigned long *start, unsigned long *end) { - struct damon_system_ram_region arg = {}; + struct damon_addr_range arg = {}; walk_system_ram_res(0, ULONG_MAX, &arg, walk_system_ram); if (arg.end <= arg.start) |
