-
允许限制 kvmalloc() 用于 kmalloc() 的分配阶数
为 kvmalloc() 的 kmalloc() 尝试增设阶数上限 sysctl,超限请求直接走 vmalloc(),消除高阶尝试的碎片与后台回收代价
-
使用基于 CPU 的压缩后端时禁止抢占
zram 用基于 CPU 的压缩后端时恢复持 stream 期间禁抢占,消除高优先级线程 swap-in 等锁卡顿的 Android 回归
-
为非机密 VM 的 guest_memfd 启用 folio 迁移
为非机密 VM 的 guest_memfd 启用 folio 迁移,让 compaction 与 NUMA 迁移等机制能作用于 guest_memfd 内存
-
内核态对用户地址的缺页改用 per-VMA lock
内核态对用户地址的缺页从无条件回退 mmap_lock 改为先试 per-VMA lock,降低锁竞争,也为 filemap 持锁做 I/O 铺路
-
coredump 新增 filesz 截断过滤选项
coredump_filter 新增截断位,PT_LOAD filesz 小于 memsz 跳过尾部零页,Meta 实测 coredump 体积与 IO 降约 40%
-
新增 page_reporting_delay_ms 模块参数
free page reporting 硬编码的 2HZ 间隔改为模块参数 page_reporting_delay_ms,默认 2000 不变,按 workload 调上报节奏
-
修复 collect_longterm_unpinnable_folios() 必然全 CPU drain LRU cache
引用比对漏算 pin 对 small folio 的 1024 偏移,FOLL_LONGTERM 路径必然全 CPU drain LRU cache,修正后按需 drain
-
为块设备启用 RWF_DONTCACHE
为块设备启用 RWF_DONTCACHE,新增 task-context bio completion 把 IRQ 里完成的 dropbehind 延迟到 worker,写 +105%,读 +56%
-
oom reaper 完成后让 dying task 跳过 reclaim 与 OOM killer
dying task 在 oom reaper 放弃后让 charge 直接失败,跳过 reclaim 与 OOM killer,20k 线程退出从约 90 秒降到约 3 秒
-
引入 kfree_rcu_nolock()
kfree_rcu_nolock() 任意上下文可调,sheaf 快路径覆盖 unknown context、PREEMPT_RT 与 !allow_spin,兜底走单指针元数据的 kvfree_rcu 批处理
-
移除引用计数的 huge zero folio
移除可选配置让 persistent huge zero folio 默认,消除读故障延迟并删引用计数与 shrinker 路径
-
pghot 热页跟踪与提升基础设施
pghot 统一多来源热页检测,按 PFN 跟踪热度由 kmigrated 线程集中提升到 DRAM,llama.cpp decode 较 NUMAB2 提升 1.41 倍
-
用 vmstat 推导 scan-balance cost 降低 lru_lock 竞争
把扫描均衡代价从 lru_lock 下移到 vmstat 计数,让消费端无锁读取,内存压力下锁等待降约 61%
-
减少 slabobj_ext 的内存浪费
slabobj_ext 改 union 按需占用字段,profiling 禁用不分配 codetag_ref、不需 objcg 的 cache 不分配 objcg