]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
mm/damon/sysfs: dealloc commit test ctx always
authorSeongJae Park <sj@kernel.org>
Fri, 3 Oct 2025 20:14:55 +0000 (13:14 -0700)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 15 Oct 2025 04:28:06 +0000 (21:28 -0700)
The damon_ctx for testing online DAMON parameters commit inputs is
deallocated only when the test fails.  This means memory is leaked for
every successful online DAMON parameters commit.  Fix the leak by always
deallocating it.

Link: https://lkml.kernel.org/r/20251003201455.41448-3-sj@kernel.org
Fixes: 4c9ea539ad59 ("mm/damon/sysfs: validate user inputs from damon_sysfs_commit_input()")
Signed-off-by: SeongJae Park <sj@kernel.org>
Cc: <stable@vger.kernel.org> [6.15+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/damon/sysfs.c

index 703f55a91b3ca5c8fa8a8fd0ab025047f2797047..cd6815ecc04ef108c2880497a87cd3c88a87d0ae 100644 (file)
@@ -1476,12 +1476,11 @@ static int damon_sysfs_commit_input(void *data)
        if (!test_ctx)
                return -ENOMEM;
        err = damon_commit_ctx(test_ctx, param_ctx);
-       if (err) {
-               damon_destroy_ctx(test_ctx);
+       if (err)
                goto out;
-       }
        err = damon_commit_ctx(kdamond->damon_ctx, param_ctx);
 out:
+       damon_destroy_ctx(test_ctx);
        damon_destroy_ctx(param_ctx);
        return err;
 }