* [6.1.176 regression] damon_reclaim.enabled broken
@ 2026-07-20 3:44 Yikai Zhao
2026-07-20 9:28 ` Liew Rui Yan
0 siblings, 1 reply; 3+ messages in thread
From: Yikai Zhao @ 2026-07-20 3:44 UTC (permalink / raw)
To: stable; +Cc: aethernet65535, sj
Hello kernel maintainers,
(Newbie here)
I found out that in 6.1.177, booting with cmdline
`damon_reclaim.enabled=Y` does not work anymore,
`/sys/module/damon_reclaim/parameters/enabled` is still `N` after
booting.
6.1.175 works OK. Apparently it's introduced in commit 2f54908fae21.
Thanks,
Yikai
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [6.1.176 regression] damon_reclaim.enabled broken
2026-07-20 3:44 [6.1.176 regression] damon_reclaim.enabled broken Yikai Zhao
@ 2026-07-20 9:28 ` Liew Rui Yan
2026-07-20 15:28 ` SJ Park
0 siblings, 1 reply; 3+ messages in thread
From: Liew Rui Yan @ 2026-07-20 9:28 UTC (permalink / raw)
To: yikai; +Cc: aethernet65535, sj, stable
Hi Yikai,
Thank you for reporting this issue :>
I just investigated the problem and found the root cause. It looks like
a typo in damon_reclaim_timer_fn(), where '!=' was used instead of '=='
(unlike damon_lru_sort), which caused the delayed work to return early
and fail to enable during early boot.
Comparison
==========
/* DAMON_RECLAIM */
static void damon_reclaim_timer_fn(struct work_struct *work)
{
bool now_enabled;
now_enabled = enabled;
if (damon_reclaim_enabled() != now_enabled)
return;
damon_reclaim_turn(now_enabled);
}
/* DAMON_LRU_SORT */
static void damon_lru_sort_timer_fn(struct work_struct *work)
{
bool now_enabled;
now_enabled = enabled;
if (damon_lru_sort_enabled() == now_enabled)
return;
damon_lru_sort_turn(now_enabled);
}
This appears to affect only version .176 and .177 (introduced by
2f54908fae211).
I will send out the fix patch as soon as possible!
Best regards,
Rui Yan
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [6.1.176 regression] damon_reclaim.enabled broken
2026-07-20 9:28 ` Liew Rui Yan
@ 2026-07-20 15:28 ` SJ Park
0 siblings, 0 replies; 3+ messages in thread
From: SJ Park @ 2026-07-20 15:28 UTC (permalink / raw)
To: Liew Rui Yan; +Cc: SJ Park, yikai, stable
On Mon, 20 Jul 2026 17:28:40 +0800 Liew Rui Yan <aethernet65535@gmail.com> wrote:
> Hi Yikai,
>
> Thank you for reporting this issue :>
Thank you for the reporting, Yikai!
>
> I just investigated the problem and found the root cause. It looks like
> a typo in damon_reclaim_timer_fn(), where '!=' was used instead of '=='
> (unlike damon_lru_sort), which caused the delayed work to return early
> and fail to enable during early boot.
>
> Comparison
> ==========
>
> /* DAMON_RECLAIM */
> static void damon_reclaim_timer_fn(struct work_struct *work)
> {
> bool now_enabled;
>
> now_enabled = enabled;
> if (damon_reclaim_enabled() != now_enabled)
> return;
> damon_reclaim_turn(now_enabled);
> }
>
> /* DAMON_LRU_SORT */
> static void damon_lru_sort_timer_fn(struct work_struct *work)
> {
> bool now_enabled;
>
> now_enabled = enabled;
> if (damon_lru_sort_enabled() == now_enabled)
> return;
> damon_lru_sort_turn(now_enabled);
> }
Thank you for investigating this, Liew!
>
> This appears to affect only version .176 and .177 (introduced by
> 2f54908fae211).
Correct. Apparently this was due to a mistake in porting.
>
> I will send out the fix patch as soon as possible!
I found you sent [1] it already. Let's further discuss on the thread.
[1] https://lore.kernel.org/20260720094708.243937-1-aethernet65535@gmail.com
Thanks,
SJ
[...]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-07-20 15:28 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-20 3:44 [6.1.176 regression] damon_reclaim.enabled broken Yikai Zhao
2026-07-20 9:28 ` Liew Rui Yan
2026-07-20 15:28 ` SJ Park
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox