From: Akinobu Mita <akinobu.mita@gmail.com>
To: damon@lists.linux.dev
Cc: linux-perf-users@vger.kernel.org, sj@kernel.org, akinobu.mita@gmail.com
Subject: [RFC PATCH v2 0/6] mm/damon: introduce perf event based access check
Date: Mon, 9 Mar 2026 10:00:03 +0900 [thread overview]
Message-ID: <20260309010009.11639-1-akinobu.mita@gmail.com> (raw)
DAMON currently only provides PTE accessed-bit based access check, this
patch series adds a new perf event based access check.
Since perf event-based access checks do not require modifying the PTE
accessed-bit for pages representing each damon region, it reduces the
overhead of monitoring at a fixed granularity of the page size.
Furthermore, this patch series also includes a feature that allows you
to set a minimum region size for each target, enabling you to monitor
at any fixed size greater than the page size for each target.
Using these features also requires modifications to damo, but these are
not included in this patch series and are currently under development in
the following branch:
* https://github.com/mita/damo/tree/damo-perf-for-v3.1.8
Any feedback or advice on the patch set would be greatly appreciated.
* v2
- reintroduce damon_operations->cleanup()
- introduce struct damon_access_report
- use struct damon_access_report instead of introducing struct
damon_perf_record
- remove maximum region size setting
* v1
- https://lore.kernel.org/damon/20260123021014.26915-1-akinobu.mita@gmail.com/T/
* TODO
- Currently, it is possible to unintentionally specify a perf_event
that cannot obtain either PERF_SAMPLE_ADDR or PERF_SAMPLE_PHYS_ADDR
- Check if it works in a virtual environment using vPMU
Akinobu Mita (6):
mm/damon: reintroduce damon_operations->cleanup()
mm/damon/core: introduce struct damon_access_report
mm/damon/core: add common code for perf event based access check
mm/damon/vaddr: support perf event based access check
mm/damon/paddr: support perf event based access check
mm/damon: allow user to set min size of region
.../ABI/testing/sysfs-kernel-mm-damon | 10 +
include/linux/damon.h | 63 ++
mm/damon/core.c | 77 ++-
mm/damon/ops-common.h | 39 ++
mm/damon/paddr.c | 105 ++-
mm/damon/sysfs-common.c | 11 +
mm/damon/sysfs-common.h | 1 +
mm/damon/sysfs.c | 399 ++++++++++-
mm/damon/tests/sysfs-kunit.h | 2 +
mm/damon/tests/vaddr-kunit.h | 5 +-
mm/damon/vaddr.c | 654 +++++++++++++++++-
11 files changed, 1332 insertions(+), 34 deletions(-)
--
2.43.0
next reply other threads:[~2026-03-09 1:00 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-09 1:00 Akinobu Mita [this message]
2026-03-09 1:00 ` [RFC PATCH v2 1/6] mm/damon: reintroduce damon_operations->cleanup() Akinobu Mita
2026-03-09 1:00 ` [RFC PATCH v2 2/6] mm/damon/core: introduce struct damon_access_report Akinobu Mita
2026-03-09 15:19 ` Ian Rogers
2026-03-10 1:23 ` SeongJae Park
2026-03-09 1:00 ` [RFC PATCH v2 3/6] mm/damon/core: add common code for perf event based access check Akinobu Mita
2026-03-09 1:00 ` [RFC PATCH v2 4/6] mm/damon/vaddr: support " Akinobu Mita
2026-03-09 1:00 ` [RFC PATCH v2 5/6] mm/damon/paddr: " Akinobu Mita
2026-03-09 1:00 ` [RFC PATCH v2 6/6] mm/damon: allow user to set min size of region Akinobu Mita
2026-03-11 0:51 ` [RFC PATCH v2 0/6] mm/damon: introduce perf event based access check SeongJae Park
2026-03-13 7:35 ` Akinobu Mita
2026-03-14 1:31 ` SeongJae Park
2026-03-16 4:42 ` Akinobu Mita
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=20260309010009.11639-1-akinobu.mita@gmail.com \
--to=akinobu.mita@gmail.com \
--cc=damon@lists.linux.dev \
--cc=linux-perf-users@vger.kernel.org \
--cc=sj@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox