v1
2026-09-28
DAMON 降栈、清理与 KUnit 测试 · v1
删除未使用的 NR_DAMOS_* 枚举、降低 kdamond 栈占用,并为 PSI quota goal 未初始化阶段逻辑补充 KUnit 测试。
原始补丁链接
子 Patch(3)
1/3
mm/damon/api: remove unused NR_DAMOS_* enumerators
删除 include/linux/damon.h 中无人引用的 NR_DAMOS_ACTIONS、NR_DAMOS_QUOTA_GOAL_METRICS、NR_DAMOS_WMARK_METRICS 枚举,将来有真实用户再引入。
2/3
mm/damon/core: reduce stack usage further
此前只把 kdamond_tune_intervals() 标为 noinline_for_stack 不够,clang-21 下 kdamond_fn 栈帧仍 1288 超过 1280 限制;同样处理 kdamond_apply_schemes()、kdamond_merge_regions()、kdamond_split_regions() 以压低整体栈深。
3/3
mm/damon/tests/core-kunit: test PSI goal values with explicit samples
用显式 PSI 总量调用当前值辅助函数做 kunit 测试,摆脱对测试机内存压力的依赖;覆盖未测量的 consist goal、effective quota 为零与非零的 temporal goal、两种 tuner 的已测量轮次,并检查 last_psi_total。