From: SeongJae Park <sj@kernel.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: SeongJae Park <sj@kernel.org>,
"# 6 . 17 . x" <stable@vger.kernel.org>,
damon@lists.linux.dev, linux-kernel@vger.kernel.org,
linux-mm@kvack.org
Subject: [PATCH] mm/damon/stat: deallocate damon_call() failure leaking damon_ctx
Date: Wed, 1 Apr 2026 18:04:55 -0700 [thread overview]
Message-ID: <20260402010457.66860-1-sj@kernel.org> (raw)
DAMON_STAT does not deallocate its dynamically allocated damon_ctx
object when damon_call() is failed. As a result, the memory is leaked.
Check the failure and deallocate the damon_ctx object.
The issue was discovered [1] by sashiko.
[1] https://lore.kernel.org/20260401012428.86694-1-sj@kernel.org
Fixes: 405f61996d9d ("mm/damon/stat: use damon_call() repeat mode instead of damon_callback")
Cc: <stable@vger.kernel.org> # 6.17.x
Signed-off-by: SeongJae Park <sj@kernel.org>
---
mm/damon/stat.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/mm/damon/stat.c b/mm/damon/stat.c
index 5a742fc157e4..30aeb2c207ec 100644
--- a/mm/damon/stat.c
+++ b/mm/damon/stat.c
@@ -257,7 +257,12 @@ static int damon_stat_start(void)
damon_stat_last_refresh_jiffies = jiffies;
call_control.data = damon_stat_context;
- return damon_call(damon_stat_context, &call_control);
+ err = damon_call(damon_stat_context, &call_control);
+ if (err) {
+ damon_destroy_ctx(damon_stat_context);
+ damon_stat_context = NULL;
+ }
+ return err;
}
static void damon_stat_stop(void)
base-commit: 4fd04f750d79667937931314ed64c9d79b0d82ef
--
2.47.3
next reply other threads:[~2026-04-02 1:04 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-02 1:04 SeongJae Park [this message]
2026-04-02 2:07 ` (sashiko review) [PATCH] mm/damon/stat: deallocate damon_call() failure leaking damon_ctx SeongJae Park
2026-04-02 5:06 ` SeongJae Park
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260402010457.66860-1-sj@kernel.org \
--to=sj@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=damon@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.