The DAMON provides struct damon_addr_range for unified address range management. However, the mtier sample still defines a local struct region_range and mixes its usage with struct damon_addr_range in damon_sample_mtier_build_ctx(). This patch removes the local struct region_range and changes the parameter type of nid_to_phys() to struct damon_addr_range. It also gets rid of the now-redundant local variable and pass the address range directly to damon_set_regions(). Signed-off-by: Enze Li --- v2: - Fix inaccurate "identical layout" claim in commit message - Remove redundant range variable and pass &addr directly to damon_set_regions() samples/damon/mtier.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/samples/damon/mtier.c b/samples/damon/mtier.c index ac9c24b92ead..3712287f009c 100644 --- a/samples/damon/mtier.c +++ b/samples/damon/mtier.c @@ -52,12 +52,7 @@ module_param(detect_node_addresses, bool, 0600); static struct damon_ctx *ctxs[2]; -struct region_range { - phys_addr_t start; - phys_addr_t end; -}; - -static int nid_to_phys(int target_node, struct region_range *range) +static int nid_to_phys(int target_node, struct damon_addr_range *range) { if (!node_online(target_node)) { pr_err("NUMA node %d is not online\n", target_node); @@ -78,8 +73,7 @@ static struct damon_ctx *damon_sample_mtier_build_ctx(bool promote) struct damos *scheme; struct damos_quota_goal *quota_goal; struct damos_filter *filter; - struct region_range addr; - struct damon_addr_range range; + struct damon_addr_range addr; int ret; ctx = damon_new_ctx(); @@ -123,10 +117,7 @@ static struct damon_ctx *damon_sample_mtier_build_ctx(bool promote) if (addr.start >= addr.end) goto free_out; - range.start = addr.start; - range.end = addr.end; - - ret = damon_set_regions(target, &range, 1, DAMON_MIN_REGION_SZ); + ret = damon_set_regions(target, &addr, 1, DAMON_MIN_REGION_SZ); if (ret) goto free_out; base-commit: c872b70f5d6c742ad34b8e838c92af81c8920b3e -- 2.43.0