TODO List
=========
本页面下的大部分 TODO 都是面向开源项目的。我欢迎任何人从这里拿走我的 TODO。不过,要拿之前记得先联系我,取得我的同意,不过我大概率是会同意的,因为我的空闲时间并不是很多。(๑•̀ㅂ•́)و✧
不过,需要注意的是,您拿走的话,作者是您了,您就必须对那些补丁负责任了。具体比较复杂,我就不细说了。(。・∀・)ノ゙
怎么看?
=======
[Z] - 进度零
[W] - 开发中
[S] - 已发送
[D] - 讨论中
[R] - 待发送
[N] - 不开始/待讨论
做好的去哪了?
--------------
做好了自然没必要留在 TODO List 啦! o(*≧▽≦)ツ
不过我也有可能会写 [DONE],只要不是单字母的,我一般都是会写一整个单词的。
DAMON
=====
[DONE] - Bug: fix unconditionally skip last region v2
[R] - Test: avoid unconditionally skip last region
这个不可以拿!因为我要在 Bug 的那个合并到 mm-new 后重新发 KUnit 的补丁,主要是为了让 Linux 的 AI 可以给更好的 Review。这个是维护者的建议。
---
[W] - Bug: fix quota could not be set to zero v2
影响较小的 Bug,会导致小量的不必要应用。
---
[R][3] - Bug: treat zero-region target as invalid target
影响较小的 Bug,会导致不必要的循环检测。本补丁将增加通用的 Invalid 条件,以此避免进入应用检测的循环。
---
[W] - Bug: damos_quota_is_full() always return true while esz is zero v2
影响不太小的 Bug,主要是在将 goal_tuner 设置为 temporal 时,如果 goal 被满足了,esz 就会变成 0,理论上就不可能有回收了。但是因为这个错误,所以每次 DAMON 都会以为配额一直饱满,导致 qt_exceeds 一直涨。
---
[N] - Optimize: use wait_event() replace ctx->pause polling
较小的优化,补丁同样也很小。不过,在发送前,需要先和维护者讨论是否有必要做这一改进。
---
DAMON Docs
==========
大部分过小的错误我并不会修正,这些让其他的新手来修会更加好,让更多人能接触 Linux。
不过,一些简单的解释修正/添加我依旧会做,即使那些也是新人入门的好方式,但是没有这些解释可能导致读者对其的理解错误。
---
[Z] - 解释 off + on 和 commit 有什么区别
区别就是前者会丢失 Age 等数据,而后者不会。
---
[N] nr_snapshots 的语义
如果有多个 target,那么 nr_snapshots 是否真的应该增加多次呢?这不仅是文档问题,更是代码问题。
---
引用
====
[1] https://github.com/aethernet65535/dotfiles/blob/master/patches/damon/tests/0001-test-for-unconditionally-skipping-the-last-region-v1.patch
[2] https://github.com/aethernet65535/dotfiles/blob/master/patches/damon/core/0001-fix-quota-could-not-be-set-to-zero-v1.patch
[3] https://github.com/aethernet65535/dotfiles/blob/master/patches/damon/core/0001-invalid-zero-region-target-rfc-v1.patch
Publish: 2026-08-30
Last Change: 2026-09-01