From: SeongJae Park <sj@kernel.org>
To: SeongJae Park <sj@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
damon@lists.linux.dev, linux-kernel@vger.kernel.org,
linux-mm@kvack.org
Subject: Re: [RFC PATCH 02/10] mm/damon/sysfs: add pause file under context dir
Date: Mon, 16 Mar 2026 21:26:36 -0700 [thread overview]
Message-ID: <20260317042637.917-1-sj@kernel.org> (raw)
In-Reply-To: <20260315210012.94846-3-sj@kernel.org>
On Sun, 15 Mar 2026 14:00:01 -0700 SeongJae Park <sj@kernel.org> wrote:
> Add pause DAMON sysfs file under the context directory. It exposes the
> damon_ctx->pause API parameter to the users so that they can use the
> pause/resume feature.
>
> Signed-off-by: SeongJae Park <sj@kernel.org>
> ---
> mm/damon/sysfs.c | 30 ++++++++++++++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
> diff --git a/mm/damon/sysfs.c b/mm/damon/sysfs.c
> index 576d1ddd736bf..4cbb8b9aaba3c 100644
> --- a/mm/damon/sysfs.c
> +++ b/mm/damon/sysfs.c
> @@ -866,6 +866,7 @@ struct damon_sysfs_context {
> struct damon_sysfs_attrs *attrs;
> struct damon_sysfs_targets *targets;
> struct damon_sysfs_schemes *schemes;
> + bool pause;
> };
sashiko.dev comments [1] below.
: Is the new pause field left uninitialized when a context is allocated?
:
: Looking at damon_sysfs_context_alloc(), memory is allocated via kmalloc_obj()
: which does not zero-fill by default, and the new field is not explicitly
: initialized:
:
: static struct damon_sysfs_context *damon_sysfs_context_alloc(
: enum damon_ops_id ops_id)
: {
: struct damon_sysfs_context *context = kmalloc_obj(*context);
:
: if (!context)
: return NULL;
: context->kobj = (struct kobject){};
: context->ops_id = ops_id;
: context->addr_unit = 1;
: return context;
: }
:
: If a user reads the pause sysfs file before writing to it, could this return
: uninitialized kernel heap memory?
Good catch. I will add below fixup to the next spin.
'''
--- a/mm/damon/sysfs.c
+++ b/mm/damon/sysfs.c
@@ -1432,6 +1432,7 @@ static struct damon_sysfs_context *damon_sysfs_context_alloc(
context->kobj = (struct kobject){};
context->ops_id = ops_id;
context->addr_unit = 1;
+ context->pause = false;
return context;
}
'''
Btw, somehow sashiko.dev added the comment to not this patch but the sixth
patch of this series.
[1] https://sashiko.dev/#/patchset/20260315210012.94846-7-sj@kernel.org
Thanks,
SJ
[...]
next prev parent reply other threads:[~2026-03-17 4:26 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-15 20:59 [RFC PATCH 00/10] mm/damon: let DAMON be paused and resumed SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 01/10] mm/damon/core: introduce damon_ctx->paused SeongJae Park
2026-03-17 4:20 ` SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 02/10] mm/damon/sysfs: add pause file under context dir SeongJae Park
2026-03-17 4:26 ` SeongJae Park [this message]
2026-03-15 21:00 ` [RFC PATCH 03/10] Docs/mm/damon/design: update for context pause/resume feature SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 04/10] Docs/admin-guide/mm/damon/usage: update for pause file SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 05/10] Docs/ABI/damon: update for pause sysfs file SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 06/10] mm/damon/tests/core-kunit: test pause commitment SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 07/10] selftests/damon/_damon_sysfs: support pause file staging SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 08/10] selftests/damon/drgn_dump_damon_status: dump pause SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 09/10] selftests/damon/sysfs.py: check pause on assert_ctx_committed() SeongJae Park
2026-03-15 21:00 ` [RFC PATCH 10/10] selftets/damon/sysfs.py: pause DAMON before dumping status SeongJae Park
2026-03-17 4:34 ` 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=20260317042637.917-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 \
/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.