From: SeongJae Park <sj@kernel.org>
To: Akinobu Mita <akinobu.mita@gmail.com>
Cc: SeongJae Park <sj@kernel.org>,
damon@lists.linux.dev, stable@vger.ekrnel.org
Subject: Re: [PATCH] mm/damon/sysfs: do not ignore callback's return value in damon_sysfs_damon_call()
Date: Sat, 20 Sep 2025 05:11:31 -0700 [thread overview]
Message-ID: <20250920121131.83174-1-sj@kernel.org> (raw)
In-Reply-To: <20250920105236.29952-1-akinobu.mita@gmail.com>
On Sat, 20 Sep 2025 19:52:36 +0900 Akinobu Mita <akinobu.mita@gmail.com> wrote:
> The callback return value is ignored in damon_sysfs_damon_call(), which
> means that it is not possible to detect invalid user input when writing
> commands such as 'commit' to /sys/kernel/mm/damon/admin/kdamonds/<K>/state.
> Fix it.
Thank you for finding this issue, Akinobu! Before the introduction of
damon_sysfs_damon_call() and its usages, DAMON sysfs interface was returning an
error in case of such command failures. So this is fixing a user-visible
unintended behavior change. Hence this may deserve Cc-ing stable@ in my
opinion.
>
So, below may better to be added?
Fixes: f64539dcdb87 ("mm/damon/sysfs: use damon_call() for update_schemes_stats")
Cc: <stable@vger.ekrnel.org> # v6.14.x
> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Reviewed-by: SeongJae Park <sj@kernel.org>
> ---
> mm/damon/sysfs.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/mm/damon/sysfs.c b/mm/damon/sysfs.c
> index fe4e73d0ebbb..97e16f00f23e 100644
> --- a/mm/damon/sysfs.c
> +++ b/mm/damon/sysfs.c
> @@ -1627,12 +1627,15 @@ static int damon_sysfs_damon_call(int (*fn)(void *data),
> struct damon_sysfs_kdamond *kdamond)
> {
> struct damon_call_control call_control = {};
> + int err;
>
> if (!kdamond->damon_ctx)
> return -EINVAL;
> call_control.fn = fn;
> call_control.data = kdamond;
> - return damon_call(kdamond->damon_ctx, &call_control);
> + err = damon_call(kdamond->damon_ctx, &call_control);
> +
I think the above new line is not really needed, but it is definitely trivial.
> + return err ? err : call_control.return_code;
> }
>
> struct damon_sysfs_schemes_walk_data {
> --
> 2.43.0
Thanks,
SJ
next prev parent reply other threads:[~2025-09-20 12:11 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-20 10:52 [PATCH] mm/damon/sysfs: do not ignore callback's return value in damon_sysfs_damon_call() Akinobu Mita
2025-09-20 12:11 ` SeongJae Park [this message]
2025-09-20 12:53 ` 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=20250920121131.83174-1-sj@kernel.org \
--to=sj@kernel.org \
--cc=akinobu.mita@gmail.com \
--cc=damon@lists.linux.dev \
--cc=stable@vger.ekrnel.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.