linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [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).