]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mm/damon/lru_sort: use damon_initialized()
authorSeongJae Park <sj@kernel.org>
Tue, 16 Sep 2025 03:35:08 +0000 (20:35 -0700)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 21 Sep 2025 21:22:38 +0000 (14:22 -0700)
DAMON_LRU_SORT is assuming DAMON is ready to use in module_init time, and
uses its own hack to see if it is the time.  Use damon_initialized(),
which is a way for seeing if DAMON is ready to be used that is more
reliable and better to maintain instead of the hack.

Link: https://lkml.kernel.org/r/20250916033511.116366-5-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/damon/lru_sort.c

index ab6173a646bd64f623945c010a8b2726b8c7d776..42b9a656f9ded0978b0e2a9da899bda0401b21c1 100644 (file)
@@ -345,7 +345,7 @@ static int damon_lru_sort_enabled_store(const char *val,
                return 0;
 
        /* Called before init function.  The function will handle this. */
-       if (!ctx)
+       if (!damon_initialized())
                goto set_param_out;
 
        err = damon_lru_sort_turn(enable);
@@ -368,8 +368,13 @@ MODULE_PARM_DESC(enabled,
 
 static int __init damon_lru_sort_init(void)
 {
-       int err = damon_modules_new_paddr_ctx_target(&ctx, &target);
+       int err;
 
+       if (!damon_initialized()) {
+               err = -ENOMEM;
+               goto out;
+       }
+       err = damon_modules_new_paddr_ctx_target(&ctx, &target);
        if (err)
                goto out;