v2
2026-08-21
修复 zswap 写回路径的 refault 误计 · v2
mm/swap 系列把 LRU 插入移出 swap cache 分配器,swap-in 时 refault,zswap 写回保留 workingset shadow。
原始补丁链接
子 Patch(3)
1/3
mm/swap: move LRU insertion out of the swap cache allocator
将LRU插入从__swap_cache_alloc_folio()移出到调用者,以便在folio_add_lru()消费workingset标志前评估refault,无功能变化。
2/3
mm/swap: refault on swap-in, not in the swap cache allocator
将refault评估从swap cache分配器移到swap-in调用者,避免zswap writeback分配buffer被误计为anon refault/activate;在分配覆盖shadow前读取。
3/3
mm/zswap: preserve the workingset shadow across writeback
zswap写回时在zswap树中暂存workingset shadow,防止分配buffer覆盖;swap-in时用于refault,reclaim时恢复,slot释放时清除。