* [PATCH] mm/damon/core: add short circuit for esz<min_region_sz in damos_adjust_quota()
@ 2026-09-13 11:01 Liew Rui Yan
2026-09-13 16:20 ` SJ Park
0 siblings, 1 reply; 3+ messages in thread
From: Liew Rui Yan @ 2026-09-13 11:01 UTC (permalink / raw)
Cc: Liew Rui Yan, SJ Park, Andrew Morton, damon, linux-mm,
linux-kernel
After damos_set_effective_quota(), the effective size quota may be lower
than min_region_sz (e.g., when the temporal quota goal is
[over-]achieved).
In this situation, damos_adjust_quota() will still calculates
quota->min_score. However, this min_score will not be used in this
window, because in damon_do_apply_schemes(), damos_quota_is_full() will
always returns true, preventing the scheme from being applied to any
region.
Therefore, add a short circuit for 'esz < min_region_sz' schemes to
early return from damos_adjust_quota() before calculating min_score.
Signed-off-by: Liew Rui Yan <aethernet65535@gmail.com>
---
Changes from RFC v1:
- RFC v1: https://lore.kernel.org/damon/20260912124406.96535-1-aethernet65535@gmail.com
- Make patch more complete by covering 'esz < min_region_sz' instead of
covering "temporal quota goal is [over-]achieved" only.
---
mm/damon/core.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/mm/damon/core.c b/mm/damon/core.c
index ce8c6f99106e..15758525765e 100644
--- a/mm/damon/core.c
+++ b/mm/damon/core.c
@@ -3318,6 +3318,8 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s)
damos_trace_esz(c, s, quota);
}
+ if (damos_quota_is_full(quota, c->min_region_sz))
+ return;
if (!c->ops.get_scheme_score)
return;
--
2.55.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] mm/damon/core: add short circuit for esz<min_region_sz in damos_adjust_quota()
2026-09-13 11:01 [PATCH] mm/damon/core: add short circuit for esz<min_region_sz in damos_adjust_quota() Liew Rui Yan
@ 2026-09-13 16:20 ` SJ Park
2026-09-14 14:42 ` Liew Rui Yan
0 siblings, 1 reply; 3+ messages in thread
From: SJ Park @ 2026-09-13 16:20 UTC (permalink / raw)
To: Liew Rui Yan; +Cc: SJ Park, Andrew Morton, damon, linux-mm, linux-kernel
Hi Liew,
From the next time, please complete discussions on the previous version before
posting a new version. For example, in this case, you could replied to my last
reply to the previous version of this patch saying you will accept my suggested
changes and wait a reasonable time to decide there is no other opinions.
I think the subject is not very clear. How about something like, "skip quota
score setup when quota is full"?
On Sun, 13 Sep 2026 19:01:38 +0800 Liew Rui Yan <aethernet65535@gmail.com> wrote:
> After damos_set_effective_quota(), the effective size quota may be lower
> than min_region_sz (e.g., when the temporal quota goal is [over-]achieved).
This sounds unnecessarily specific and doesn't cover all the case. What about
"In damos_adjust_quota(), the quota could already be full."
>
> In this situation, damos_adjust_quota() will still calculates
> quota->min_score. However, this min_score will not be used in this
> window, because in damon_do_apply_schemes(), damos_quota_is_full() will
> always returns true, preventing the scheme from being applied to any
> region.
>
> Therefore, add a short circuit for 'esz < min_region_sz' schemes to
> early return from damos_adjust_quota() before calculating min_score.
>
> Signed-off-by: Liew Rui Yan <aethernet65535@gmail.com>
Assuming you agree to above suggestions,
Reviewed-by: SJ Park <sj@kernel.org>
With the above assumption, I modified this patch with the suggestions and
applied to damon/next [1] tree. I will repost it for mm.git merge after a
week. So, if you are ok with the plan, no action from your side is needed.
Please let me know if you have different opinions.
[1] https://origin.kernel.org/doc/html/latest/mm/damon/maintainer-profile.html#scm-trees
Thanks,
SJ
[...]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] mm/damon/core: add short circuit for esz<min_region_sz in damos_adjust_quota()
2026-09-13 16:20 ` SJ Park
@ 2026-09-14 14:42 ` Liew Rui Yan
0 siblings, 0 replies; 3+ messages in thread
From: Liew Rui Yan @ 2026-09-14 14:42 UTC (permalink / raw)
To: sj; +Cc: aethernet65535, akpm, damon, linux-kernel, linux-mm
On Sun, 13 Sep 2026 09:20:45 -0700 SJ Park <sj@kernel.org> wrote:
> Hi Liew,
>
>
> From the next time, please complete discussions on the previous version before
> posting a new version. For example, in this case, you could replied to my last
> reply to the previous version of this patch saying you will accept my suggested
> changes and wait a reasonable time to decide there is no other opinions.
Thank you for your guidance. From the next time, I will reply and say
if I will accept your suggestions.
>
> I think the subject is not very clear. How about something like, "skip quota
> score setup when quota is full"?
Sure, it is shorter and more understandable.
>
> On Sun, 13 Sep 2026 19:01:38 +0800 Liew Rui Yan <aethernet65535@gmail.com> wrote:
>
> > After damos_set_effective_quota(), the effective size quota may be lower
> > than min_region_sz (e.g., when the temporal quota goal is [over-]achieved).
>
> This sounds unnecessarily specific and doesn't cover all the case. What about
>
> "In damos_adjust_quota(), the quota could already be full."
Agree, that makes sense. Since users who is using temporal quota
auto-tuning should know what happens when goal is achieved.
>
> >
> > In this situation, damos_adjust_quota() will still calculates
> > quota->min_score. However, this min_score will not be used in this
> > window, because in damon_do_apply_schemes(), damos_quota_is_full() will
> > always returns true, preventing the scheme from being applied to any
> > region.
> >
> > Therefore, add a short circuit for 'esz < min_region_sz' schemes to
> > early return from damos_adjust_quota() before calculating min_score.
> >
> > Signed-off-by: Liew Rui Yan <aethernet65535@gmail.com>
>
> Assuming you agree to above suggestions,
Yes, I agree those all suggestions.
>
> Reviewed-by: SJ Park <sj@kernel.org>
>
> With the above assumption, I modified this patch with the suggestions and
> applied to damon/next [1] tree. I will repost it for mm.git merge after a
> week. So, if you are ok with the plan, no action from your side is needed.
>
> Please let me know if you have different opinions.
>
> [1] https://origin.kernel.org/doc/html/latest/mm/damon/maintainer-profile.html#scm-trees
Best regards,
Rui Yan
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-09-14 14:43 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-13 11:01 [PATCH] mm/damon/core: add short circuit for esz<min_region_sz in damos_adjust_quota() Liew Rui Yan
2026-09-13 16:20 ` SJ Park
2026-09-14 14:42 ` Liew Rui Yan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).