OSDN Git Service

mm/damon/reclaim: use damon_select_ops() instead of damon_{v,p}a_set_operations()
authorSeongJae Park <sj@kernel.org>
Tue, 22 Mar 2022 21:48:55 +0000 (14:48 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 22 Mar 2022 22:57:12 +0000 (15:57 -0700)
This commit makes DAMON_RECLAIM to select the registered monitoring
operations for the physical address space instead of setting it on its
own.  This allows DAMON_RECLAIM be independent of DAMON_PADDR, but leave
the dependency as is, because it's the only one monitoring operations it
use, and therefore it makes no sense to build DAMON_RECLAIM without
DAMON_PADDR.

Link: https://lkml.kernel.org/r/20220215184603.1479-5-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Cc: David Rientjes <rientjes@google.com>
Cc: Xin Hao <xhao@linux.alibaba.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/damon/reclaim.c

index 3c93095..b53d9c2 100644 (file)
@@ -384,7 +384,9 @@ static int __init damon_reclaim_init(void)
        if (!ctx)
                return -ENOMEM;
 
-       damon_pa_set_operations(ctx);
+       if (damon_select_ops(ctx, DAMON_OPS_PADDR))
+               return -EINVAL;
+
        ctx->callback.after_aggregation = damon_reclaim_after_aggregation;
 
        target = damon_new_target();