From: SeongJae Park <sj@kernel.org>
Cc: SeongJae Park <sj@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
damon@lists.linux.dev, linux-kernel@vger.kernel.org,
linux-mm@kvack.org
Subject: [RFC PATCH 02/10] mm/damon/core: add damon_new_region() debug_sanity check
Date: Sat, 21 Feb 2026 11:36:19 -0800 [thread overview]
Message-ID: <20260221193629.19332-3-sj@kernel.org> (raw)
In-Reply-To: <20260221193629.19332-1-sj@kernel.org>
damon_new_region() is supposed to be called with only valid address
range arguments. Do the check under DAMON_DEBUG_SANITY.
Signed-off-by: SeongJae Park <sj@kernel.org>
---
mm/damon/core.c | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/mm/damon/core.c b/mm/damon/core.c
index 602b85ef23597..a7f5748c1fe17 100644
--- a/mm/damon/core.c
+++ b/mm/damon/core.c
@@ -109,6 +109,22 @@ int damon_select_ops(struct damon_ctx *ctx, enum damon_ops_id id)
return err;
}
+#ifdef CONFIG_DAMON_DEBUG_SANITY
+static void damon_verify_new_region(unsigned long start, unsigned long end)
+{
+
+ if (start < end)
+ return;
+ pr_err("damon_new_region() s called with start %lu >= end %lu!\n",
+ start, end);
+ WARN_ONCE();
+}
+#else
+static void damon_verify_new_region(unsigned long start, unsigned long end)
+{
+}
+#endif
+
/*
* Construct a damon_region struct
*
@@ -122,6 +138,8 @@ struct damon_region *damon_new_region(unsigned long start, unsigned long end)
if (!region)
return NULL;
+ damon_verify_new_region(start, end);
+
region->ar.start = start;
region->ar.end = end;
region->nr_accesses = 0;
--
2.47.3
next prev parent reply other threads:[~2026-02-21 19:36 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-21 19:36 [RFC PATCH 00/10] mm/damon: add optional debugging-purpose sanity checks SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 01/10] mm/damon: add CONFIG_DAMON_DEBUG_SANITY SeongJae Park
2026-03-01 16:31 ` SeongJae Park
2026-02-21 19:36 ` SeongJae Park [this message]
2026-03-01 16:33 ` [RFC PATCH 02/10] mm/damon/core: add damon_new_region() debug_sanity check SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 03/10] mm/damon/core: add damon_del_region() " SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 04/10] mm/damon/core: add damon_nr_regions() " SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 05/10] mm/damon/core: add damon_merge_two_regions() " SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 06/10] mm/damon/core: add damon_merge_regions_of() " SeongJae Park
2026-03-01 16:42 ` SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 07/10] mm/damon/core: add damon_split_region_at() " SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 08/10] mm/damon/core: add damon_reset_aggregated() " SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 09/10] mm/damon/tests/.kunitconifg: enable DAMON_DEBUG_SANITY SeongJae Park
2026-02-21 20:15 ` SeongJae Park
2026-02-21 19:36 ` [RFC PATCH 10/10] tools/testing/selftests/damon/config: " SeongJae Park
2026-02-28 22:45 ` 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=20260221193629.19332-3-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.