From: Donggeun Yoo <donggeunyoo.kernel@gmail.com>
To: sj@kernel.org, akpm@linux-foundation.org
Cc: damon@lists.linux.dev, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, donggeunyoo.kernel@gmail.com
Subject: [PATCH v3 0/2] mm/damon: fix the temporal goal tuner's size quota conversion
Date: Sun, 20 Sep 2026 21:24:09 +0900 [thread overview]
Message-ID: <20260920122411.610213-1-donggeunyoo.kernel@gmail.com> (raw)
damos_goal_tune_esz_bp_temporal() hands the size quota to
damos_set_effective_quota() through quota->esz_bp in basis points, and
the multiply that gets it there is unchecked. On 32-bit it wraps above
429496 bytes, and to exactly zero for every multiple of 256 MiB. A zero
effective quota makes damos_quota_is_full() true on the first test of
every charge window, so the scheme applies nothing for as long as the
goal is unachieved.
Patch 1 bounds the conversion. Patch 2 pins the boundary in the core
kunit suite, where it would fail without patch 1 on any word size.
v2: https://lore.kernel.org/damon/20260920023111.2466265-1-donggeunyoo.kernel@gmail.com/
Changes in v3, all from SJ Park's review; the code is unchanged:
- patch 1: wrap the changelog at 72 columns, say what the impact is and
is not, fold the 64-bit boundary into the trigger conditions rather
than arguing it separately, and drop the passage on why widening
esz_bp is not the fix
- patch 2: wrap the changelog at 72 columns; pick up the Reviewed-by
- drop the documentation patch, which SJ asked to drop
Rebased onto mm-new 87acb5b914c2; v2's base is no longer in that branch.
DAMON kunit on x86_64, on the new base: 36 tests, all passing with both
patches; 35 passing and damos_test_esz_goal_temporal failing with patch
2 alone.
Donggeun Yoo (2):
mm/damon/core: prevent size quota overflow in the temporal goal tuner
mm/damon/tests/core-kunit: test the temporal tuner's size quota
conversion
mm/damon/core.c | 2 +-
mm/damon/tests/core-kunit.h | 48 +++++++++++++++++++++++++++++++++++++
2 files changed, 49 insertions(+), 1 deletion(-)
--
2.53.0
next reply other threads:[~2026-09-20 12:24 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-20 12:24 Donggeun Yoo [this message]
2026-09-20 12:24 ` [PATCH v3 1/2] mm/damon/core: prevent size quota overflow in the temporal goal tuner Donggeun Yoo
2026-09-20 12:34 ` sashiko-bot
2026-09-20 12:24 ` [PATCH v3 2/2] mm/damon/tests/core-kunit: test the temporal tuner's size quota conversion Donggeun Yoo
2026-09-20 12:31 ` sashiko-bot
2026-09-20 12:41 ` [PATCH v3 0/2] mm/damon: fix the temporal goal " SJ 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=20260920122411.610213-1-donggeunyoo.kernel@gmail.com \
--to=donggeunyoo.kernel@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=damon@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.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 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.