v4
2026-08-31
清理 MGLRU folio 计数与标志使用 · v4
v4清理MGLRU folio计数/标志:lru_zone_size原子化、迁移复制引用状态并修复folio数泄漏。
原始补丁链接
子 Patch(6)
1/6
mm/memcontrol: make lru_zone_size atomic and simplify sanity check
From: Kairui Song kasong@tencent.com commit ca707239e8a7 (“mm: update_lru_size warn and reset bad lru_size”) introduced a sanity check to catch memcg counter underflow, which was more of a workarou
2/6
mm/mglru: introduce helpers for manipulating gen and refs flags
为 MGLRU folio 的 gen/refs 标志位操作新增辅助函数,封装直接位运算,无功能变化;原子操作拆分仅产生瞬时状态,性能无影响,便于调试理解。
3/6
mm/migrate: copy all referenced state via folio_migrate_lru_refs
[mm/migrate: copy all referenced state via folio_migrate_lru_refs] From: Kairui Song kasong@tencent.com folio_migrate_flags() copies PG_referenced separately from the MGLRU refs counter, which foli
4/6
mm/mglru: move max_seq read into walk_update_folio
[mm/mglru: move max_seq read into walk_update_folio] From: Kairui Song kasong@tencent.com walk_pte_range(), walk_pmd_range_locked(), and lru_gen_look_around() each read lrugen->max_seq to compute t
5/6
mm/mglru: use explicit tier range in read_ctrl_pos()
[mm/mglru: use explicit tier range in read_ctrl_pos()] From: Kairui Song kasong@tencent.com read_ctrl_pos() encodes the tier range in a single “tier” parameter via “tier % MAX_NR_TIERS” as the star
6/6
mm/mglru: fix potential generation folio number leak
[mm/mglru: fix potential generation folio number leak] From: Kairui Song kasong@tencent.com Each generation of MGLRU accounts anon and file folio numbers separately, and the page table walker updat